Bug 547919 - [IoTML] WoT TD generator
Change-Id: If4ed66f29b0e0f848e85e8624b77cf482b77e6c6
Signed-off-by: Shuai Li <shuai.li@cea.fr>
diff --git a/addons/pom.xml b/addons/pom.xml
index e7efe13..837f7ba 100644
--- a/addons/pom.xml
+++ b/addons/pom.xml
@@ -12,6 +12,7 @@
<modules>
<!--<module>simulation</module>-->
+ <module>wot</module>
</modules>
</project>
\ No newline at end of file
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/.classpath b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/.classpath
new file mode 100644
index 0000000..eca7bdb
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/.classpath
@@ -0,0 +1,7 @@
+<?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-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/.project b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/.project
new file mode 100644
index 0000000..b7c56dc
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.iotml.wot.td.codegen.ui</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/.settings/org.eclipse.jdt.core.prefs b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..0c68a61
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/META-INF/MANIFEST.MF b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..dc11e98
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,13 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.iotml.wot.td.codegen.ui;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.iotml.wot.td.codegen.ui.Activator
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Require-Bundle: org.eclipse.papyrus.iotml.wot.td.codegen;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.papyrus.uml.diagram.common;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.designer.languages.common.base;bundle-version="[1.0.4,2.0.0)"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-ActivationPolicy: lazy
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/build.properties b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/build.properties
new file mode 100644
index 0000000..5acb28e
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/build.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2019 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v2.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v20.html
+#
+# Contributors:
+# Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ plugin.properties
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/plugin.properties b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/plugin.properties
new file mode 100644
index 0000000..a6e67ec
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/plugin.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2019 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v2.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v20.html
+#
+# Contributors:
+# Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+###############################################################################
+pluginName=Papyrus IoT-ML WoT TD code generation UI
+providerName=Eclipse Modeling Project
+
+td.codegen.uml.command.name=Generate WoT TD
+td.codegen.uml.command.description=Generate WoT Thing Description from IoT-ML model
+td.codegen.uml.page.name=WoT TD code generation
\ No newline at end of file
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/plugin.xml b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/plugin.xml
new file mode 100644
index 0000000..98934a3
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/plugin.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2019 CEA LIST.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v2.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v20.html
+
+ Contributors:
+ Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+ -->
+
+<plugin>
+ <extension
+ point="org.eclipse.ui.menus">
+ <menuContribution
+ allPopups="false"
+ locationURI="popup:org.eclipse.papyrus.designer.popup?after=codegen">
+ <command
+ commandId="org.eclipse.papyrus.iotml.wot.td.codegen.ui.command"
+ label="%td.codegen.uml.command.name"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ categoryId="org.eclipse.papyrus.editor.category"
+ description="%command.description"
+ id="org.eclipse.papyrus.iotml.wot.td.codegen.ui.command"
+ name="%td.codegen.uml.command.name">
+ </command>
+ </extension>
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.papyrus.iotml.wot.td.codegen.ui.handlers.GenerateTDHandler"
+ commandId="org.eclipse.papyrus.iotml.wot.td.codegen.ui.command">
+ <activeWhen>
+ <and>
+ <with
+ variable="selection">
+ <iterate>
+ <adapt
+ type="org.eclipse.emf.ecore.EObject">
+ <instanceof
+ value="org.eclipse.uml2.uml.PackageableElement">
+ </instanceof>
+ </adapt>
+ </iterate>
+ </with>
+ <count
+ value="1">
+ </count>
+ </and>
+ </activeWhen>
+ </handler>
+ </extension>
+
+</plugin>
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/pom.xml b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/pom.xml
new file mode 100644
index 0000000..1eca951
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/pom.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>org.eclipse.papyrus.iotml.addons.wot</artifactId>
+ <groupId>org.eclipse.papyrus.iotml</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <!-- POM Description -->
+ <artifactId>org.eclipse.papyrus.iotml.wot.td.codegen.ui</artifactId>
+ <packaging>eclipse-plugin</packaging>
+ <name>org.eclipse.papyrus.iotml.wot.td.codegen.ui</name>
+ <description>Papyrus IoT-ML WoT TD generation UI</description>
+
+</project>
\ No newline at end of file
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/src/org/eclipse/papyrus/iotml/wot/td/codegen/ui/Activator.java b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/src/org/eclipse/papyrus/iotml/wot/td/codegen/ui/Activator.java
new file mode 100644
index 0000000..8d8890e
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/src/org/eclipse/papyrus/iotml/wot/td/codegen/ui/Activator.java
@@ -0,0 +1,67 @@
+/*******************************************************************************
+ * Copyright (c) 2019 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ *
+ * Contributors:
+ * Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.iotml.wot.td.codegen.ui;
+
+import org.eclipse.papyrus.infra.core.log.LogHelper;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ *
+ */
+public class Activator extends AbstractUIPlugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.iotml.wot.td.codegen.ui"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ public static LogHelper log;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ log = new LogHelper();
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/src/org/eclipse/papyrus/iotml/wot/td/codegen/ui/handlers/GenerateTDHandler.java b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/src/org/eclipse/papyrus/iotml/wot/td/codegen/ui/handlers/GenerateTDHandler.java
new file mode 100644
index 0000000..15f2e1c
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen.ui/src/org/eclipse/papyrus/iotml/wot/td/codegen/ui/handlers/GenerateTDHandler.java
@@ -0,0 +1,74 @@
+/*******************************************************************************
+ * Copyright (c) 2019 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ *
+ * Contributors:
+ * Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.iotml.wot.td.codegen.ui.handlers;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IWorkspaceRoot;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.papyrus.iotml.wot.td.codegen.transformation.TDModelElementsCreator;
+import org.eclipse.papyrus.uml.diagram.common.handlers.CmdHandler;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.PackageableElement;
+
+/**
+ * Handler class for generating VDHL code from UML model.
+ */
+public class GenerateTDHandler extends CmdHandler {
+
+ /**
+ * Execute the generation TD code from the selected UML Class.
+ *
+ * {@inheritDoc}
+ */
+ @Override
+ public Object execute(ExecutionEvent event) throws ExecutionException {
+ updateSelectedEObject();
+
+ if (selectedEObject instanceof PackageableElement) {
+ PackageableElement pe = (PackageableElement) selectedEObject;
+
+ URI uri = pe.eResource().getURI();
+ IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
+ if (uri.segmentCount() < 2) {
+ return null;
+ }
+ IProject modelProject = root.getProject(uri.segment(1));
+ if (modelProject == null) {
+ return null;
+ }
+
+ if (modelProject.exists()) {
+ TDModelElementsCreator mec = new TDModelElementsCreator(modelProject, pe);
+ mec.createPackageableElement(pe, null);
+ }
+ }
+ return null;
+ }
+
+ /**
+ * The handler is capable of executing at this time if the selected element is a UML Class.
+ *
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean isEnabled() {
+ updateSelectedEObject();
+
+ if (selectedEObject instanceof Class) {
+ return true;
+ }
+ return super.isEnabled();
+ }
+
+}
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/.classpath b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/.classpath
new file mode 100644
index 0000000..eca7bdb
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/.classpath
@@ -0,0 +1,7 @@
+<?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-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/.project b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/.project
new file mode 100644
index 0000000..04a4d04
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.iotml.wot.td.codegen</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/.settings/org.eclipse.jdt.core.prefs b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..0c68a61
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/META-INF/MANIFEST.MF b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..9710988
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/META-INF/MANIFEST.MF
@@ -0,0 +1,21 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.iotml.wot.td.codegen;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-ActivationPolicy: lazy
+Require-Bundle: org.eclipse.papyrus.designer.languages.common.base;bundle-version="[1.0.4,2.0.0)",
+ org.eclipse.papyrus.uml.tools.utils;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.designer.languages.common.extensionpoints;bundle-version="[1.0.4,2.0.0)",
+ org.apache.commons.lang;bundle-version="[2.6.0,3.0.0)",
+ org.eclipse.uml2.uml;bundle-version="[5.0.0,6.0.0)",
+ org.eclipse.papyrus.iotml.profile;bundle-version="[1.0.0,2.0.0)",
+ com.fasterxml.jackson.core.jackson-annotations;bundle-version="[2.9.0,3.0.0)",
+ com.fasterxml.jackson.core.jackson-core;bundle-version="[2.9.0,3.0.0)",
+ com.fasterxml.jackson.core.jackson-databind;bundle-version="[2.9.0,3.0.0)"
+Bundle-Activator: org.eclipse.papyrus.iotml.wot.td.codegen.Activator
+Export-Package: org.eclipse.papyrus.iotml.wot.td.codegen.transformation
+
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/build.properties b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/build.properties
new file mode 100644
index 0000000..28e32f0
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/build.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2019 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v2.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v20.html
+#
+# Contributors:
+# Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.properties,\
+ plugin.xml
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/plugin.properties b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/plugin.properties
new file mode 100644
index 0000000..fffc0bd
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/plugin.properties
@@ -0,0 +1,15 @@
+###############################################################################
+# Copyright (c) 2019 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v2.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v20.html
+#
+# Contributors:
+# Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+###############################################################################
+pluginName=Papyrus IoT-ML WoT TD code generation
+providerName=Eclipse Modeling Project
+
+generator.language=WoT TD
+generator.id=Standard WoT TD
\ No newline at end of file
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/plugin.xml b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/plugin.xml
new file mode 100644
index 0000000..43bc6ee
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/plugin.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2019 CEA LIST.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v2.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v20.html
+
+ Contributors:
+ Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+ -->
+
+<plugin>
+
+</plugin>
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/pom.xml b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/pom.xml
new file mode 100644
index 0000000..7247725
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/pom.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>org.eclipse.papyrus.iotml.addons.wot</artifactId>
+ <groupId>org.eclipse.papyrus.iotml</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <!-- POM Description -->
+ <artifactId>org.eclipse.papyrus.iotml.wot.td.codegen</artifactId>
+ <packaging>eclipse-plugin</packaging>
+ <name>org.eclipse.papyrus.iotml.wot.td.codegen</name>
+ <description>Papyrus IoT-ML WoT TD generation</description>
+</project>
\ No newline at end of file
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/Activator.java b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/Activator.java
new file mode 100644
index 0000000..a7280b3
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/Activator.java
@@ -0,0 +1,65 @@
+/*******************************************************************************
+ * Copyright (c) 2019 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ *
+ * Contributors:
+ * Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.iotml.wot.td.codegen;
+
+import org.eclipse.papyrus.infra.core.log.LogHelper;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ *
+ */
+public class Activator extends AbstractUIPlugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.iotml.wot.td.codegen"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ public static LogHelper log;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ log = new LogHelper();
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/TDLangCodegen.java b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/TDLangCodegen.java
new file mode 100644
index 0000000..c316b20
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/TDLangCodegen.java
@@ -0,0 +1,179 @@
+/*******************************************************************************
+ * Copyright (c) 2019 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ *
+ * Contributors:
+ * Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.iotml.wot.td.codegen;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.papyrus.designer.languages.common.base.ModelElementsCreator;
+import org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen2;
+import org.eclipse.papyrus.designer.languages.common.extensionpoints.MethodInfo;
+import org.eclipse.papyrus.designer.languages.common.extensionpoints.SyncInformation;
+import org.eclipse.papyrus.iotml.wot.td.codegen.transformation.TDModelElementsCreator;
+import org.eclipse.uml2.uml.Classifier;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.PackageableElement;
+
+/**
+ * TD language support.
+ *
+ */
+public class TDLangCodegen implements ILangCodegen2 {
+
+ private static final String TD_GENERATOR_DESC = "A WoT TD generator."; //$NON-NLS-1$
+
+ protected ModelElementsCreator creator = null;
+
+ /**
+ * The translation of the Model to the TD code.
+ */
+ protected PackageableElement pe;
+
+ protected IProject lastProject = null;
+
+ /**
+ * Constructor.
+ *
+ * @param modelToTDQueries
+ * The translation of the Model to the TD code
+ */
+ public TDLangCodegen(PackageableElement pe) {
+ this.pe = pe;
+ }
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen2#getDescription()
+ *
+ * @return
+ */
+ @Override
+ public String getDescription() {
+ return TD_GENERATOR_DESC;
+ }
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen2#isEligible(org.eclipse.uml2.uml.Element)
+ *
+ * @param modelElement
+ * @return
+ */
+ @Override
+ public boolean isEligible(Element modelElement) {
+ if (modelElement instanceof PackageableElement) {
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen2#getSuffix(org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen.FILE_KIND)
+ *
+ * @param fileKind
+ * @return
+ */
+ @Override
+ public String getSuffix(FILE_KIND fileKind) {
+ return "json";
+ }
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen#generateCode(org.eclipse.core.resources.IProject, org.eclipse.uml2.uml.PackageableElement, org.eclipse.core.runtime.IProgressMonitor)
+ *
+ * @param project
+ * @param element
+ * @param monitor
+ */
+ @Override
+ public void generateCode(IProject project, PackageableElement element, IProgressMonitor monitor) {
+ manageCreator(project, element);
+ creator.createPackageableElement(element, monitor);
+ }
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen#cleanCode(org.eclipse.core.resources.IProject, org.eclipse.uml2.uml.PackageableElement, org.eclipse.core.runtime.IProgressMonitor)
+ *
+ * @param project
+ * @param element
+ * @param monitor
+ */
+ @Override
+ public void cleanCode(IProject project, PackageableElement element, IProgressMonitor monitor) {
+ manageCreator(project, element);
+ creator.removePackageableElement(element, monitor);
+ }
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen#getFileName(org.eclipse.core.resources.IProject, org.eclipse.uml2.uml.NamedElement)
+ *
+ * @param project
+ * @param element
+ * @return
+ */
+ @Override
+ public String getFileName(IProject project, NamedElement element) {
+ manageCreator(project, element);
+ return creator.getFileName(element);
+ }
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen#getTargetProject(org.eclipse.uml2.uml.PackageableElement, boolean)
+ *
+ * @param pe
+ * @param createIfMissing
+ * @return
+ */
+ @Override
+ public IProject getTargetProject(PackageableElement pe, boolean createIfMissing) {
+ return null;
+ }
+
+ /**
+ * Manage the TDModelElementsCreator.
+ *
+ * @param project
+ * The target project
+ * @param element
+ * the selected element
+ */
+ protected void manageCreator(IProject project, Element element) {
+ if ((project == null) && (element instanceof PackageableElement)) {
+ project = getTargetProject((PackageableElement) element, false);
+ }
+
+ if ((creator == null) || (project != lastProject)) {
+ lastProject = project;
+ creator = new TDModelElementsCreator(project, (PackageableElement) element);
+ }
+ }
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen2#getSyncInformation(java.lang.String, java.lang.String)
+ *
+ * @param methodName
+ * @param body
+ * @return
+ */
+ @Override
+ public SyncInformation getSyncInformation(String methodName, String body) {
+ return null;
+ }
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen2#getMethodInfo(org.eclipse.uml2.uml.NamedElement)
+ *
+ * @param operationOrBehavior
+ * @return
+ */
+ @Override
+ public MethodInfo getMethodInfo(NamedElement operationOrBehavior) {
+ return null;
+ }
+}
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/generator/ThingGenerator.java b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/generator/ThingGenerator.java
new file mode 100644
index 0000000..2708bbb
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/generator/ThingGenerator.java
@@ -0,0 +1,22 @@
+package org.eclipse.papyrus.iotml.wot.td.codegen.generator;
+
+import org.eclipse.papyrus.iotml.wot.Thing;
+
+import com.fasterxml.jackson.annotation.JsonInclude.Include;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+
+public class ThingGenerator {
+ public static String generateTDCode(Thing thing) {
+ ObjectMapper mapper = new ObjectMapper();
+ mapper.setSerializationInclusion(Include.NON_NULL);
+ mapper.setSerializationInclusion(Include.NON_EMPTY);
+ try {
+ String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(thing);
+ return jsonString;
+ } catch (JsonProcessingException e) {
+ e.printStackTrace();
+ return "";
+ }
+ }
+}
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/transformation/TDGenerationUtil.java b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/transformation/TDGenerationUtil.java
new file mode 100644
index 0000000..fb32f29
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/transformation/TDGenerationUtil.java
@@ -0,0 +1,21 @@
+package org.eclipse.papyrus.iotml.wot.td.codegen.transformation;
+
+import java.util.List;
+
+public class TDGenerationUtil {
+ public static boolean isNotNullOrEmpty (Object object) {
+ if (object == null) {
+ return false;
+ }
+
+ if (object instanceof String) {
+ return ((String) object).isEmpty();
+ }
+
+ if (object instanceof List) {
+ return ((List) object).isEmpty();
+ }
+
+ return true;
+ }
+}
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/transformation/TDModelElementsCreator.java b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/transformation/TDModelElementsCreator.java
new file mode 100644
index 0000000..608439b
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.codegen/src/org/eclipse/papyrus/iotml/wot/td/codegen/transformation/TDModelElementsCreator.java
@@ -0,0 +1,120 @@
+/*******************************************************************************
+ * Copyright (c) 2019 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ *
+ * Contributors:
+ * Shuai Li (CEA LIST) <shuai.li@cea.fr> - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.iotml.wot.td.codegen.transformation;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.papyrus.designer.languages.common.base.HierarchyLocationStrategy;
+import org.eclipse.papyrus.designer.languages.common.base.ModelElementsCreator;
+import org.eclipse.papyrus.infra.tools.file.ProjectBasedFileAccess;
+import org.eclipse.papyrus.iotml.wot.Thing;
+import org.eclipse.papyrus.iotml.wot.td.codegen.generator.ThingGenerator;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.PackageableElement;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+/**
+ * Main class of TD code generator.
+ */
+public class TDModelElementsCreator extends ModelElementsCreator {
+
+ private static final String TD_LANG = "TD"; //$NON-NLS-1$
+
+ private static final String JSON_SUFFIX = "json";
+
+ protected String tdExt;
+
+ /**
+ * Constructor.
+ *
+ * @param project
+ * the project in which the generated code should be placed
+ * @param modelToTD
+ * the translation of the Model to the TD code
+ */
+ public TDModelElementsCreator(IProject project, PackageableElement pe) {
+ this(project, TD_LANG, pe);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param project
+ * the project in which the generated code should be placed
+ * @param language
+ * the generator language
+ * @param modelToTD
+ * the translation of the Model to the TD code
+ */
+ public TDModelElementsCreator(IProject project, String language, PackageableElement pe) {
+ super(new ProjectBasedFileAccess(project), new HierarchyLocationStrategy(), language);
+ this.project = project;
+ tdExt = JSON_SUFFIX;
+ }
+
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.base.ModelElementsCreator#noCodeGen(org.eclipse.uml2.uml.Element)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ protected boolean noCodeGen(Element element) {
+ return false;
+ }
+
+ /**
+ * @see org.eclipse.papyrus.designer.languages.common.base.ModelElementsCreator#createPackageableElementFile(org.eclipse.uml2.uml.PackageableElement, org.eclipse.core.runtime.IProgressMonitor)
+ *
+ * @param pe
+ * @param monitor
+ */
+ @Override
+ protected void createPackageableElementFile(PackageableElement pe, IProgressMonitor monitor) {
+ generateThing(pe);
+ for (Element element : pe.allOwnedElements()) {
+ if (element instanceof Property) {
+ Property property = (Property) element;
+ if (property.getType() != null) {
+ generateThing(property.getType());
+ }
+ }
+ generateThing(element);
+ }
+ }
+
+ /**
+ * Generate the TD code for each sub entity.
+ *
+ * @param topEntity
+ * the top entity (top class)
+ * @param modelToTD
+ * the translation of the Model to the TD code
+ */
+ private void generateThing(Element element) {
+ Thing thing = UMLUtil.getStereotypeApplication(element, Thing.class);
+ if (thing != null) {
+ generateTDCode(thing);
+ }
+ }
+
+
+ /**
+ * Generate the final TD code file.
+ */
+ private void generateTDCode(Thing thing) {
+ String result = ThingGenerator.generateTDCode(thing).toString();
+ String fileNameTD = locStrategy.getFileName(thing.getBase_Class()) + "." + tdExt; //$NON-NLS-1$
+ fileSystemAccess.generateFile(fileNameTD, result);
+ }
+}
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.classpath b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.classpath
new file mode 100644
index 0000000..ebde520
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.classpath
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" output="target/classes" path="src/main/java">
+ <attributes>
+ <attribute name="optional" value="true"/>
+ <attribute name="maven.pomderived" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="src" output="target/test-classes" path="src/test/java">
+ <attributes>
+ <attribute name="optional" value="true"/>
+ <attribute name="maven.pomderived" value="true"/>
+ <attribute name="test" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5">
+ <attributes>
+ <attribute name="maven.pomderived" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
+ <attributes>
+ <attribute name="maven.pomderived" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.project b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.project
new file mode 100644
index 0000000..17e1ac9
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.project
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.iotml.wot.td.feature</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.FeatureBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ <nature>org.eclipse.pde.FeatureNature</nature>
+ </natures>
+</projectDescription>
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.settings/org.eclipse.core.resources.prefs b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.settings/org.eclipse.jdt.core.prefs b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..71ac301
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,6 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.settings/org.eclipse.m2e.core.prefs b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/build.properties b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/build.properties
new file mode 100644
index 0000000..fa4bd48
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/build.properties
@@ -0,0 +1,6 @@
+bin.includes = feature.xml,\
+ feature.properties,\
+ license.html,\
+ epl-v10.html
+src.includes = epl-v10.html,\
+ license.html
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/epl-v10.html b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/epl-v10.html
new file mode 100644
index 0000000..cb1073a
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/epl-v10.html
@@ -0,0 +1,304 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+xmlns:w="urn:schemas-microsoft-com:office:word"
+xmlns="http://www.w3.org/TR/REC-html40">
+
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<link rel=File-List
+href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
+<title>Eclipse Public License - Version 1.0</title>
+<style>
+<!--
+ /* Font Definitions */
+@font-face
+ {
+ panose-1:2 11 6 4 3 5 4 4 2 4;
+ mso-font-charset:0;
+ mso-font-pitch:variable;
+ mso-font-signature:553679495 -2147483648 8 0 66047 0;}
+ /* Style Definitions */
+p.MsoNormal, li.MsoNormal, div.MsoNormal
+ {mso-style-parent:"";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ }
+p
+ {margin-right:0in;
+ mso-margin-top-alt:auto;
+ mso-margin-bottom-alt:auto;
+ margin-left:0in;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ }
+p.BalloonText, li.BalloonText, div.BalloonText
+ {mso-style-name:"Balloon Text";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:8.0pt;
+
+ }
+@page Section1
+ {size:8.5in 11.0in;
+ margin:1.0in 1.25in 1.0in 1.25in;
+ mso-header-margin:.5in;
+ mso-footer-margin:.5in;
+ mso-paper-source:0;}
+div.Section1
+ {page:Section1;}
+-->
+</style>
+</head>
+
+<body lang="EN-US" style='tab-interval:.5in'>
+
+<div class=Section1>
+
+<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
+</p>
+
+<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
+THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE,
+REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
+OF THIS AGREEMENT.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>"Contribution" means:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+in the case of the initial Contributor, the initial code and documentation
+distributed under this Agreement, and<br clear=left>
+b) in the case of each subsequent Contributor:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+changes to the Program, and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+additions to the Program;</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
+such changes and/or additions to the Program originate from and are distributed
+by that particular Contributor. A Contribution 'originates' from a Contributor
+if it was added to the Program by such Contributor itself or anyone acting on
+such Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in conjunction
+with the Program under their own license agreement, and (ii) are not derivative
+works of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>"Contributor" means any person or
+entity that distributes the Program.</span> </p>
+
+<p><span style='font-size:10.0pt'>"Licensed Patents " mean patent
+claims licensable by a Contributor which are necessarily infringed by the use
+or sale of its Contribution alone or when combined with the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>"Program" means the Contributions
+distributed in accordance with this Agreement.</span> </p>
+
+<p><span style='font-size:10.0pt'>"Recipient" means anyone who
+receives the Program under this Agreement, including all Contributors.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+Subject to the terms of this Agreement, each Contributor hereby grants Recipient
+a non-exclusive, worldwide, royalty-free copyright license to<span
+style='color:red'> </span>reproduce, prepare derivative works of, publicly
+display, publicly perform, distribute and sublicense the Contribution of such
+Contributor, if any, and such derivative works, in source code and object code
+form.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+Subject to the terms of this Agreement, each Contributor hereby grants
+Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
+patent license under Licensed Patents to make, use, sell, offer to sell, import
+and otherwise transfer the Contribution of such Contributor, if any, in source
+code and object code form. This patent license shall apply to the combination
+of the Contribution and the Program if, at the time the Contribution is added
+by the Contributor, such addition of the Contribution causes such combination
+to be covered by the Licensed Patents. The patent license shall not apply to
+any other combinations which include the Contribution. No hardware per se is
+licensed hereunder. </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
+Recipient understands that although each Contributor grants the licenses to its
+Contributions set forth herein, no assurances are provided by any Contributor
+that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient
+for claims brought by any other entity based on infringement of intellectual
+property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility
+to secure any other intellectual property rights needed, if any. For example,
+if a third party patent license is required to allow Recipient to distribute
+the Program, it is Recipient's responsibility to acquire that license before
+distributing the Program.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
+Each Contributor represents that to its knowledge it has sufficient copyright
+rights in its Contribution, if any, to grant the copyright license set forth in
+this Agreement. </span></p>
+
+<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
+Program in object code form under its own license agreement, provided that:</span>
+</p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it complies with the terms and conditions of this Agreement; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+its license agreement:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+effectively disclaims on behalf of all Contributors all warranties and
+conditions, express and implied, including warranties or conditions of title
+and non-infringement, and implied warranties or conditions of merchantability
+and fitness for a particular purpose; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+effectively excludes on behalf of all Contributors all liability for damages,
+including direct, indirect, special, incidental and consequential damages, such
+as lost profits; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
+states that any provisions which differ from this Agreement are offered by that
+Contributor alone and not by any other party; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
+states that source code for the Program is available from such Contributor, and
+informs licensees how to obtain it in a reasonable manner on or through a
+medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
+
+<p><span style='font-size:10.0pt'>When the Program is made available in source
+code form:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it must be made available under this Agreement; and </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
+copy of this Agreement must be included with each copy of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
+copyright notices contained within the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
+originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution. </span></p>
+
+<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
+
+<p><span style='font-size:10.0pt'>Commercial distributors of software may
+accept certain responsibilities with respect to end users, business partners
+and the like. While this license is intended to facilitate the commercial use
+of the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create potential
+liability for other Contributors. Therefore, if a Contributor includes the
+Program in a commercial product offering, such Contributor ("Commercial
+Contributor") hereby agrees to defend and indemnify every other
+Contributor ("Indemnified Contributor") against any losses, damages and
+costs (collectively "Losses") arising from claims, lawsuits and other
+legal actions brought by a third party against the Indemnified Contributor to
+the extent caused by the acts or omissions of such Commercial Contributor in
+connection with its distribution of the Program in a commercial product
+offering. The obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In order
+to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor
+to control, and cooperate with the Commercial Contributor in, the defense and
+any related settlement negotiations. The Indemnified Contributor may participate
+in any such claim at its own expense.</span> </p>
+
+<p><span style='font-size:10.0pt'>For example, a Contributor might include the
+Program in a commercial product offering, Product X. That Contributor is then a
+Commercial Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance claims and
+warranties are such Commercial Contributor's responsibility alone. Under this
+section, the Commercial Contributor would have to defend claims against the
+other Contributors related to those performance claims and warranties, and if a
+court requires any other Contributor to pay any damages as a result, the
+Commercial Contributor must pay those damages.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT
+WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
+WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and distributing the
+Program and assumes all risks associated with its exercise of rights under this
+Agreement , including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs or
+equipment, and unavailability or interruption of operations. </span></p>
+
+<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
+THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
+
+<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
+or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without
+further action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.</span> </p>
+
+<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
+against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with
+other software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the date
+such litigation is filed. </span></p>
+
+<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
+shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable
+period of time after becoming aware of such noncompliance. If all Recipient's
+rights under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive. </span></p>
+
+<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
+copies of this Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The Agreement
+Steward reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement Steward has
+the right to modify this Agreement. The Eclipse Foundation is the initial
+Agreement Steward. The Eclipse Foundation may assign the responsibility to
+serve as the Agreement Steward to a suitable separate entity. Each new version
+of the Agreement will be given a distinguishing version number. The Program
+(including Contributions) may always be distributed subject to the version of
+the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program
+(including its Contributions) under the new version. Except as expressly stated
+in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether
+expressly, by implication, estoppel or otherwise. All rights in the Program not
+expressly granted under this Agreement are reserved.</span> </p>
+
+<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
+State of New York and the intellectual property laws of the United States of
+America. No party to this Agreement will bring a legal action under this
+Agreement more than one year after the cause of action arose. Each party waives
+its rights to a jury trial in any resulting litigation.</span> </p>
+
+<p class=MsoNormal></p>
+
+</div>
+
+</body>
+
+</html>
\ No newline at end of file
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/feature.properties b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/feature.properties
new file mode 100644
index 0000000..6fced9e
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/feature.properties
@@ -0,0 +1,138 @@
+# NLS_MESSAGEFORMAT_VAR
+
+# "featureName" property - name of the feature
+featureName=Web of Things Thing Description JSON-LD Generator (Incubation)
+
+# "providerName" property - name of the company that provides the feature
+providerName=Eclipse Modeling Project
+
+# "licenseURL" property - URL of the "Feature License"
+# do not translate value - just change to point to a locale-specific HTML page
+licenseURL=license.html
+
+# "license" property - text of the "Feature Update License"
+# should be plain text version of license agreement pointed to be "licenseURL"
+license=\
+Eclipse Foundation Software User Agreement\n\
+April 9, 2014\n\
+\n\
+Usage Of Content\n\
+\n\
+THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
+OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
+USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
+AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
+NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
+AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
+AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
+OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
+TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
+OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
+BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
+\n\
+Applicable Licenses\n\
+\n\
+Unless otherwise indicated, all Content made available by the\n\
+Eclipse Foundation is provided to you under the terms and conditions of\n\
+the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is\n\
+provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
+For purposes of the EPL, "Program" will mean the Content.\n\
+\n\
+Content includes, but is not limited to, source code, object code,\n\
+documentation and other files maintained in the Eclipse Foundation source code\n\
+repository ("Repository") in software modules ("Modules") and made available\n\
+as downloadable archives ("Downloads").\n\
+\n\
+\t- Content may be structured and packaged into modules to facilitate delivering,\n\
+\t extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
+\t plug-in fragments ("Fragments"), and features ("Features").\n\
+\t- Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)\n\
+\t in a directory named "plugins".\n\
+\t- A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
+\t Each Feature may be packaged as a sub-directory in a directory named "features".\n\
+\t Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
+\t numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
+\t- Features may also include other Features ("Included Features"). Within a Feature, files\n\
+\t named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
+\n\
+The terms and conditions governing Plug-ins and Fragments should be\n\
+contained in files named "about.html" ("Abouts"). The terms and\n\
+conditions governing Features and Included Features should be contained\n\
+in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
+Licenses may be located in any directory of a Download or Module\n\
+including, but not limited to the following locations:\n\
+\n\
+\t- The top-level (root) directory\n\
+\t- Plug-in and Fragment directories\n\
+\t- Inside Plug-ins and Fragments packaged as JARs\n\
+\t- Sub-directories of the directory named "src" of certain Plug-ins\n\
+\t- Feature directories\n\
+\n\
+Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
+Provisioning Technology (as defined below), you must agree to a license ("Feature \n\
+Update License") during the installation process. If the Feature contains\n\
+Included Features, the Feature Update License should either provide you\n\
+with the terms and conditions governing the Included Features or inform\n\
+you where you can locate them. Feature Update Licenses may be found in\n\
+the "license" property of files named "feature.properties" found within a Feature.\n\
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the\n\
+terms and conditions (or references to such terms and conditions) that\n\
+govern your use of the associated Content in that directory.\n\
+\n\
+THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER\n\
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
+SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
+\n\
+\t- Eclipse Distribution License Version 1.0 (available at http://www.eclipse.org/licenses/edl-v1.0.html)\n\
+\t- Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
+\t- Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
+\t- Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
+\t- Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
+\n\
+IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
+TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License\n\
+is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
+govern that particular Content.\n\
+\n\
+\n\Use of Provisioning Technology\n\
+\n\
+The Eclipse Foundation makes available provisioning software, examples of which include,\n\
+but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for\n\
+the purpose of allowing users to install software, documentation, information and/or\n\
+other materials (collectively "Installable Software"). This capability is provided with\n\
+the intent of allowing such users to install, extend and update Eclipse-based products.\n\
+Information about packaging Installable Software is available at\n\
+http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\
+\n\
+You may use Provisioning Technology to allow other parties to install Installable Software.\n\
+You shall be responsible for enabling the applicable license agreements relating to the\n\
+Installable Software to be presented to, and accepted by, the users of the Provisioning Technology\n\
+in accordance with the Specification. By using Provisioning Technology in such a manner and\n\
+making it available in accordance with the Specification, you further acknowledge your\n\
+agreement to, and the acquisition of all necessary rights to permit the following:\n\
+\n\
+\t1. A series of actions may occur ("Provisioning Process") in which a user may execute\n\
+\t the Provisioning Technology on a machine ("Target Machine") with the intent of installing,\n\
+\t extending or updating the functionality of an Eclipse-based product.\n\
+\t2. During the Provisioning Process, the Provisioning Technology may cause third party\n\
+\t Installable Software or a portion thereof to be accessed and copied to the Target Machine.\n\
+\t3. Pursuant to the Specification, you will provide to the user the terms and conditions that\n\
+\t govern the use of the Installable Software ("Installable Software Agreement") and such\n\
+\t Installable Software Agreement shall be accessed from the Target Machine in accordance\n\
+\t with the Specification. Such Installable Software Agreement must inform the user of the\n\
+\t terms and conditions that govern the Installable Software and must solicit acceptance by\n\
+\t the end user in the manner prescribed in such Installable Software Agreement. Upon such\n\
+\t indication of agreement by the user, the provisioning Technology will complete installation\n\
+\t of the Installable Software.\n\
+\n\
+Cryptography\n\
+\n\
+Content may contain encryption software. The country in which you are\n\
+currently may have restrictions on the import, possession, and use,\n\
+and/or re-export to another country, of encryption software. BEFORE\n\
+using any encryption software, please check the country's laws,\n\
+regulations and policies concerning the import, possession, or use, and\n\
+re-export of encryption software, to see if this is permitted.\n\
+\n\
+Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.\n
+########### end of license property ##########################################
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/feature.xml b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/feature.xml
new file mode 100644
index 0000000..4a1e832
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/feature.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+ id="org.eclipse.papyrus.iotml.wot.td.feature"
+ label="%featureName"
+ version="1.0.0.qualifier"
+ provider-name="%providerName">
+
+ <description url="https://eclipse.org/papyrus/">
+ Provide the capability to execute a subset of UML interactions
+ </description>
+
+ <copyright url="http://www.eclipse.org/legal/epl-v10.html">
+ Copyright (c) 2020 CEA
+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:
+* Shuai Li (CEA LIST) shuai.li@cea.fr - Initial API
+and implementation
+ </copyright>
+
+ <license url="%licenseURL">
+ %license
+ </license>
+
+ <requires>
+ <import feature="org.eclipse.papyrus.designer.languages.common.feature"/>
+ </requires>
+
+ <plugin
+ id="org.eclipse.papyrus.iotml.wot.td.codegen"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.iotml.wot.td.codegen.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+</feature>
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/license.html b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/license.html
new file mode 100644
index 0000000..c3d34c3
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/license.html
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>April 9, 2014</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+ (COLLECTIVELY "CONTENT"). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+ CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+ OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+ NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+ CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
+ ("EPL"). A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+ For purposes of the EPL, "Program" will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
+ repository ("Repository") in software modules ("Modules") and made available as downloadable archives ("Downloads").</p>
+
+<ul>
+ <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and features ("Features").</li>
+ <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java™ ARchive) in a directory named "plugins".</li>
+ <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named "features". Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of the Plug-ins
+ and/or Fragments associated with that Feature.</li>
+ <li>Features may also include other Features ("Included Features"). Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named "about.html" ("Abouts"). The terms and conditions governing Features and
+Included Features should be contained in files named "license.html" ("Feature Licenses"). Abouts and Feature Licenses may be located in any directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+ <li>The top-level (root) directory</li>
+ <li>Plug-in and Fragment directories</li>
+ <li>Inside Plug-ins and Fragments packaged as JARs</li>
+ <li>Sub-directories of the directory named "src" of certain Plug-ins</li>
+ <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license ("Feature Update License") during the
+installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
+inform you where you can locate them. Feature Update Licenses may be found in the "license" property of files named "feature.properties" found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+ <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+ <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+ <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+ <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+ <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
+ Update Manager ("Provisioning Technology") for the purpose of allowing users to install software, documentation, information and/or
+ other materials (collectively "Installable Software"). This capability is provided with the intent of allowing such users to
+ install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
+ href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+ ("Specification").</p>
+
+<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
+ applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
+ in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
+ Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+ <li>A series of actions may occur ("Provisioning Process") in which a user may execute the Provisioning Technology
+ on a machine ("Target Machine") with the intent of installing, extending or updating the functionality of an Eclipse-based
+ product.</li>
+ <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
+ accessed and copied to the Target Machine.</li>
+ <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
+ Software ("Installable Software Agreement") and such Installable Software Agreement shall be accessed from the Target
+ Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
+ the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
+ indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
+ another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
+ possession, or use, and re-export of encryption software, to see if this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+</body>
+</html>
diff --git a/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/pom.xml b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/pom.xml
new file mode 100644
index 0000000..3355cd3
--- /dev/null
+++ b/addons/wot/org.eclipse.papyrus.iotml.wot.td.feature/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.papyrus.iotml.addons.wot</artifactId>
+ <groupId>org.eclipse.papyrus.iotml</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>org.eclipse.papyrus.iotml.wot.td.feature</artifactId>
+ <packaging>eclipse-feature</packaging>
+ <name>org.eclipse.papyrus.iotml.wot.td.feature</name>
+ <description>Papyrus IoT-ML WoT TD feature</description>
+</project>
\ No newline at end of file
diff --git a/addons/wot/pom.xml b/addons/wot/pom.xml
new file mode 100644
index 0000000..cd3408e
--- /dev/null
+++ b/addons/wot/pom.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.papyrus.iotml.addons</artifactId>
+ <groupId>org.eclipse.papyrus.iotml</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>org.eclipse.papyrus.iotml.addons.wot</artifactId>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>org.eclipse.papyrus.iotml.wot.td.codegen</module>
+ <module>org.eclipse.papyrus.iotml.wot.td.codegen.ui</module>
+ <module>org.eclipse.papyrus.iotml.wot.td.feature</module>
+
+ </modules>
+
+</project>
\ No newline at end of file
diff --git a/org.eclipse.papyrus.iotml.profile/META-INF/MANIFEST.MF b/org.eclipse.papyrus.iotml.profile/META-INF/MANIFEST.MF
index 3ba4171..9ebce51 100644
--- a/org.eclipse.papyrus.iotml.profile/META-INF/MANIFEST.MF
+++ b/org.eclipse.papyrus.iotml.profile/META-INF/MANIFEST.MF
@@ -71,7 +71,10 @@
org.eclipse.uml2.uml.profile.standard;bundle-version="[1.0.100,2.0.0)";visibility:=reexport,
org.eclipse.uml2.types;visibility:=reexport,
org.eclipse.uml2.uml;visibility:=reexport,
- org.eclipse.uml2.uml.resources
+ org.eclipse.uml2.uml.resources,
+ com.fasterxml.jackson.core.jackson-annotations;bundle-version="[2.9.0, 3.0.0)",
+ com.fasterxml.jackson.core.jackson-core;bundle-version="[2.9.0, 3.0.0)",
+ com.fasterxml.jackson.core.jackson-databind;bundle-version="[2.9.0, 3.0.0)"
Eclipse-LazyStart: true
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
diff --git a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.genmodel b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.genmodel
index c8f8e3f..19e3a9c 100644
--- a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.genmodel
+++ b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.genmodel
@@ -1,7 +1,7 @@
<?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/uml2/2.2.0/GenModel"
- copyrightText="Copyright (c) 2018 CEA

 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:
 Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
 Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
"
+ copyrightText="Copyright (c) 2018 CEA

 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:
 Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
 Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
 Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
"
modelDirectory="/org.eclipse.papyrus.iotml.profile/src-gen" modelPluginID="org.eclipse.papyrus.iotml.profile"
modelName="IoT-ML" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
importerID="org.eclipse.uml2.uml.ecore.importer" complianceLevel="8.0" copyrightFields="false"
@@ -416,11 +416,15 @@
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="iotml.ecore#//wot/SubProtocolKind/sse"/>
</genEnums>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//wot/Thing">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Thing/title"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Thing/description"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Thing/base"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Thing/id"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Thing/support"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Thing/security"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Thing/securityDefinitions"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Thing/links"/>
@@ -432,15 +436,19 @@
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Thing/properties"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Thing/version"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
- propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Thing/type"/>
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Thing/aType"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
- propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Thing/context"/>
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Thing/aContext"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Thing/forms"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Thing/base_Class"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//wot/SecurityScheme">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/SecurityScheme/base_Classifier"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/SecurityScheme/title"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/SecurityScheme/description"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/SecurityScheme/scheme"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/SecurityScheme/proxy"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/SecurityScheme/in"/>
@@ -467,7 +475,7 @@
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//wot/EventAffordance">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
- propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/EventAffordance/base_Signal"/>
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/EventAffordance/base_Reception"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/EventAffordance/data"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
@@ -476,10 +484,12 @@
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/EventAffordance/cancellation"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="iotml.ecore#//wot/InteractionAffordance">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/InteractionAffordance/title"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/InteractionAffordance/description"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/InteractionAffordance/forms"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
- propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/InteractionAffordance/type"/>
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/InteractionAffordance/aType"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//wot/Form">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Form/op"/>
@@ -490,6 +500,10 @@
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Form/subProtocol"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Form/scopes"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Form/response"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Form/security"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Form/base_Comment"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//wot/Type">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/Type/name"/>
@@ -497,12 +511,12 @@
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/Type/base_Type"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//wot/DataSchema">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/DataSchema/title"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/DataSchema/description"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/DataSchema/base_TypedElement"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
- propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/DataSchema/enum"/>
- <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
- propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/DataSchema/numberInterval"/>
+ propertySortChoices="true" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/DataSchema/enum"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/DataSchema/required"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
@@ -510,19 +524,25 @@
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/DataSchema/properties"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
- propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/DataSchema/type"/>
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/DataSchema/aType"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/DataSchema/writeOnly"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/DataSchema/format"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/DataSchema/oneOf"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/DataSchema/type"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/DataSchema/const"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/DataSchema/minItems"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/DataSchema/maxItems"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/DataSchema/readOnly"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="iotml.ecore#//wot/ActionAffordance">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/ActionAffordance/base_Operation"/>
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/ActionAffordance/input"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/ActionAffordance/output"/>
- <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
- propertySortChoices="true" ecoreFeature="ecore:EReference iotml.ecore#//wot/ActionAffordance/base_BehavioralFeature"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/ActionAffordance/safe"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute iotml.ecore#//wot/ActionAffordance/idempotent"/>
</genClasses>
diff --git a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.layers b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.layers
index cd019c4..29133be 100644
--- a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.layers
+++ b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.layers
@@ -104,4 +104,12 @@
<layers xmi:type="layers:TopLayerOperator" xmi:id="_uHPvYTeSEeqyIeUo_DCO7w" application="_uDOyEDeSEeqyIeUo_DCO7w" name="Top Layer" isLayerEnabled="true" owningLayersStack="_uHPvYDeSEeqyIeUo_DCO7w" state="detached"/>
<diagram xmi:type="notation:Diagram" href="platform:/plugin/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation#_01fKwCuNEemAOL1eRjr3BA"/>
</layersStacks>
+ <layersStacks xmi:type="layers:LayersStack" xmi:id="_p4Ee4HNLEeqwz4k_vbCPDQ" state="detached">
+ <layers xmi:type="layers:TopLayerOperator" xmi:id="_p4Ee4XNLEeqwz4k_vbCPDQ" application="_uDOyEDeSEeqyIeUo_DCO7w" name="Top Layer" isLayerEnabled="true" owningLayersStack="_p4Ee4HNLEeqwz4k_vbCPDQ" state="detached"/>
+ <diagram xmi:type="notation:Diagram" href="platform:/plugin/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation#_Yse5cCtvEeeZI6rMTYV60w"/>
+ </layersStacks>
+ <layersStacks xmi:type="layers:LayersStack" xmi:id="_p4NBwHNLEeqwz4k_vbCPDQ" state="detached">
+ <layers xmi:type="layers:TopLayerOperator" xmi:id="_p4NBwXNLEeqwz4k_vbCPDQ" application="_uDOyEDeSEeqyIeUo_DCO7w" name="Top Layer" isLayerEnabled="true" owningLayersStack="_p4NBwHNLEeqwz4k_vbCPDQ" state="detached"/>
+ <diagram xmi:type="notation:Diagram" href="platform:/plugin/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation#_mYGYECtzEeeZI6rMTYV60w"/>
+ </layersStacks>
</layers:LayersStackApplication>
diff --git a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation
index f66e93c..7bdea70 100644
--- a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation
+++ b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.notation
@@ -4198,14 +4198,6 @@
<element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_-_De8SuREemAOL1eRjr3BA" x="720" y="60"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_eB2wx3fSEemED9p17L-bjA" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_eB2wyHfSEemED9p17L-bjA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_eB2wynfSEemED9p17L-bjA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_eB2wyXfSEemED9p17L-bjA" x="920" y="60"/>
- </children>
<children xmi:type="notation:Shape" xmi:id="_tbWIoHflEemED9p17L-bjA" type="Stereotype_Shape" fillColor="12632256">
<children xmi:type="notation:DecorationNode" xmi:id="_tbWIonflEemED9p17L-bjA" type="Stereotype_NameLabel"/>
<children xmi:type="notation:BasicCompartment" xmi:id="_tbWIo3flEemED9p17L-bjA" visible="false" type="Stereotype_AttributeCompartment">
@@ -4262,26 +4254,34 @@
<element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_5OCzQXfoEemED9p17L-bjA" x="840" y="60"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_5OVHI3foEemED9p17L-bjA" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_5OVHJHfoEemED9p17L-bjA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5OVHJnfoEemED9p17L-bjA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5OVHJXfoEemED9p17L-bjA" x="200"/>
- </children>
<children xmi:type="notation:Shape" xmi:id="_6-So4HfoEemED9p17L-bjA" type="Class_MetaclassShape">
<children xmi:type="notation:DecorationNode" xmi:id="_6-So4nfoEemED9p17L-bjA" type="Class_MetaclassNameLabel"/>
<element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_6-So4XfoEemED9p17L-bjA" x="960" y="60"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_6-e2I3foEemED9p17L-bjA" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_6-e2JHfoEemED9p17L-bjA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_6-e2JnfoEemED9p17L-bjA" name="BASE_ELEMENT">
+ <children xmi:type="notation:Shape" xmi:id="_ZyqPg3JkEeqvaKCRysa56A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZyqPhHJkEeqvaKCRysa56A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZyqPhnJkEeqvaKCRysa56A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZyqPhXJkEeqvaKCRysa56A" x="920" y="60"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZyqPqHJkEeqvaKCRysa56A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_ZyqPqXJkEeqvaKCRysa56A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zy0AgHJkEeqvaKCRysa56A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZyqPqnJkEeqvaKCRysa56A" x="1040" y="60"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Zy0AmXJkEeqvaKCRysa56A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Zy0AmnJkEeqvaKCRysa56A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zy0AnHJkEeqvaKCRysa56A" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
</styles>
<element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6-e2JXfoEemED9p17L-bjA" x="200"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zy0Am3JkEeqvaKCRysa56A" x="1160" y="60"/>
</children>
<styles xmi:type="notation:StringValueStyle" xmi:id="_01fKwSuNEemAOL1eRjr3BA" name="diagram_compatibility_version" stringValue="1.4.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_01fKwiuNEemAOL1eRjr3BA"/>
@@ -4349,16 +4349,6 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RwIYUCuSEemAOL1eRjr3BA" id="(0.4,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RwIYUSuSEemAOL1eRjr3BA" id="(0.6,1.0)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_eB2wy3fSEemED9p17L-bjA" type="StereotypeCommentLink" source="_-_De8CuREemAOL1eRjr3BA" target="_eB2wx3fSEemED9p17L-bjA">
- <styles xmi:type="notation:FontStyle" xmi:id="_eB2wzHfSEemED9p17L-bjA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_eB2w0HfSEemED9p17L-bjA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_eB2wzXfSEemED9p17L-bjA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_eB2wznfSEemED9p17L-bjA"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_eB2wz3fSEemED9p17L-bjA"/>
- </edges>
<edges xmi:type="notation:Connector" xmi:id="_ZqMHwHfkEemED9p17L-bjA" type="Generalization_Edge" source="_buX1ACuQEemAOL1eRjr3BA" target="_Gdg78CuPEemAOL1eRjr3BA">
<children xmi:type="notation:DecorationNode" xmi:id="_ZqSOYHfkEemED9p17L-bjA" type="Generalization_StereotypeLabel">
<styles xmi:type="notation:BooleanValueStyle" xmi:id="_bIXV8HfkEemED9p17L-bjA" name="IS_UPDATED_POSITION" booleanValue="true"/>
@@ -4402,16 +4392,6 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vM7bAHflEemED9p17L-bjA" id="(0.4,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vM7bAXflEemED9p17L-bjA" id="(0.4,1.0)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_5OVHJ3foEemED9p17L-bjA" type="StereotypeCommentLink" source="_5OCzQHfoEemED9p17L-bjA" target="_5OVHI3foEemED9p17L-bjA">
- <styles xmi:type="notation:FontStyle" xmi:id="_5OVHKHfoEemED9p17L-bjA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5OVHLHfoEemED9p17L-bjA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5OVHKXfoEemED9p17L-bjA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5OVHKnfoEemED9p17L-bjA"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5OVHK3foEemED9p17L-bjA"/>
- </edges>
<edges xmi:type="notation:Connector" xmi:id="_6ANQAHfoEemED9p17L-bjA" type="Extension_Edge" source="_kYhyYHfnEemED9p17L-bjA" target="_5OCzQHfoEemED9p17L-bjA">
<styles xmi:type="notation:FontStyle" xmi:id="_6ANQAXfoEemED9p17L-bjA"/>
<element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_5_cbAHfoEemED9p17L-bjA"/>
@@ -4419,16 +4399,6 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6AlqgHfoEemED9p17L-bjA" id="(0.6,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6AlqgXfoEemED9p17L-bjA" id="(0.6,0.9920000000000002)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_6-e2J3foEemED9p17L-bjA" type="StereotypeCommentLink" source="_6-So4HfoEemED9p17L-bjA" target="_6-e2I3foEemED9p17L-bjA">
- <styles xmi:type="notation:FontStyle" xmi:id="_6-e2KHfoEemED9p17L-bjA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_6-e2LHfoEemED9p17L-bjA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6-e2KXfoEemED9p17L-bjA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6-e2KnfoEemED9p17L-bjA"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6-e2K3foEemED9p17L-bjA"/>
- </edges>
<edges xmi:type="notation:Connector" xmi:id="_72RZwHfoEemED9p17L-bjA" type="Extension_Edge" source="_lHi0gHfnEemED9p17L-bjA" target="_6-So4HfoEemED9p17L-bjA">
<styles xmi:type="notation:FontStyle" xmi:id="_72RZwXfoEemED9p17L-bjA"/>
<element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_71y4oHfoEemED9p17L-bjA"/>
@@ -4436,6 +4406,36 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_72p0QHfoEemED9p17L-bjA" id="(0.6,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_72p0QXfoEemED9p17L-bjA" id="(0.6,0.9920000000000002)"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZyqPh3JkEeqvaKCRysa56A" type="StereotypeCommentLink" source="_-_De8CuREemAOL1eRjr3BA" target="_ZyqPg3JkEeqvaKCRysa56A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZyqPiHJkEeqvaKCRysa56A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZyqPjHJkEeqvaKCRysa56A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZyqPiXJkEeqvaKCRysa56A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZyqPinJkEeqvaKCRysa56A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZyqPi3JkEeqvaKCRysa56A"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Zy0AgXJkEeqvaKCRysa56A" type="StereotypeCommentLink" source="_5OCzQHfoEemED9p17L-bjA" target="_ZyqPqHJkEeqvaKCRysa56A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Zy0AgnJkEeqvaKCRysa56A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zy0AhnJkEeqvaKCRysa56A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Zy0Ag3JkEeqvaKCRysa56A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zy0AhHJkEeqvaKCRysa56A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zy0AhXJkEeqvaKCRysa56A"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Zy0AnXJkEeqvaKCRysa56A" type="StereotypeCommentLink" source="_6-So4HfoEemED9p17L-bjA" target="_Zy0AmXJkEeqvaKCRysa56A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Zy0AnnJkEeqvaKCRysa56A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Zy0AonJkEeqvaKCRysa56A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Zy0An3JkEeqvaKCRysa56A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zy0AoHJkEeqvaKCRysa56A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zy0AoXJkEeqvaKCRysa56A"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_lrvRgEZ1Eemjs4KMC2ChPg" type="PapyrusUMLProfileDiagram" name="WoT-Stereotypes" measurementUnit="Pixel">
<children xmi:type="notation:Shape" xmi:id="_npmsYEZ1Eemjs4KMC2ChPg" type="Stereotype_Shape">
@@ -5584,6 +5584,31 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Z0zAD6uEeqAfKdldzYc-w" id="(0.3614457831325301,1.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_3Z0zAT6uEeqAfKdldzYc-w" id="(1.0,0.46153846153846156)"/>
</edges>
+ <edges xmi:type="notation:Connector" xmi:id="_-l1cYHJkEeqvaKCRysa56A" type="Association_Edge" source="_npmsYEZ1Eemjs4KMC2ChPg" target="_GdG10UZ2Eemjs4KMC2ChPg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-l1cY3JkEeqvaKCRysa56A" type="Association_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-l1cZHJkEeqvaKCRysa56A" y="60"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_-l1cZXJkEeqvaKCRysa56A" type="Association_NameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-l1cZnJkEeqvaKCRysa56A" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_-l1cZ3JkEeqvaKCRysa56A" type="Association_TargetRoleLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-l1caHJkEeqvaKCRysa56A" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_-l1caXJkEeqvaKCRysa56A" type="Association_SourceRoleLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-l1canJkEeqvaKCRysa56A" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_-l1ca3JkEeqvaKCRysa56A" type="Association_SourceMultiplicityLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-l1cbHJkEeqvaKCRysa56A" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_-l1cbXJkEeqvaKCRysa56A" type="Association_TargetMultiplicityLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-l1cbnJkEeqvaKCRysa56A" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_-l1cYXJkEeqvaKCRysa56A"/>
+ <element xmi:type="uml:Association" href="IoT-ML.profile.uml#_-lF1gHJkEeqvaKCRysa56A"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-l1cYnJkEeqvaKCRysa56A" points="[346, 200, -643984, -643984]$[540, 200, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-nBvMHJkEeqvaKCRysa56A" id="(1.0,0.6802721088435374)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-nBvMXJkEeqvaKCRysa56A" id="(0.0,0.6334841628959276)"/>
+ </edges>
</notation:Diagram>
<notation:Diagram xmi:id="_7AcL8EZ6Eemjs4KMC2ChPg" type="PapyrusUMLProfileDiagram" name="WoT-Extensions" measurementUnit="Pixel">
<children xmi:type="notation:Shape" xmi:id="_O1vY8FbCEemms65MbAzNPw" type="Stereotype_Shape">
@@ -5722,33 +5747,6 @@
<element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_Pd7WEEZ2Eemjs4KMC2ChPg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_M1dhQVbYEemms65MbAzNPw" x="180" y="200"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_HaXSkHfqEemED9p17L-bjA" type="Stereotype_Shape" fillColor="12632256">
- <children xmi:type="notation:DecorationNode" xmi:id="_HadZMHfqEemED9p17L-bjA" type="Stereotype_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_HadZMXfqEemED9p17L-bjA" visible="false" type="Stereotype_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_HadZMnfqEemED9p17L-bjA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_HadZM3fqEemED9p17L-bjA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_HadZNHfqEemED9p17L-bjA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HadZNXfqEemED9p17L-bjA"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_HadZNnfqEemED9p17L-bjA" visible="false" type="Stereotype_OperationCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_HadZN3fqEemED9p17L-bjA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_HadZOHfqEemED9p17L-bjA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_HadZOXfqEemED9p17L-bjA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HadZOnfqEemED9p17L-bjA"/>
- </children>
- <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_mxPqICtuEeeZI6rMTYV60w"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HaXSkXfqEemED9p17L-bjA" x="20" y="40"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_Bvg5AHuiEemSm8y_ktEBHQ" type="Class_MetaclassShape">
- <children xmi:type="notation:DecorationNode" xmi:id="_BvqqAHuiEemSm8y_ktEBHQ" type="Class_MetaclassNameLabel"/>
- <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Signal"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Bvg5AXuiEemSm8y_ktEBHQ" x="940" y="40"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_P264kHuiEemSm8y_ktEBHQ" type="Class_MetaclassShape">
- <children xmi:type="notation:DecorationNode" xmi:id="_P264knuiEemSm8y_ktEBHQ" type="Class_MetaclassNameLabel"/>
- <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#BehavioralFeature"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P264kXuiEemSm8y_ktEBHQ" x="780" y="40"/>
- </children>
<children xmi:type="notation:Shape" xmi:id="_F2O48HuxEemSm8y_ktEBHQ" type="Class_MetaclassShape">
<children xmi:type="notation:DecorationNode" xmi:id="_F2O48nuxEemSm8y_ktEBHQ" type="Class_MetaclassNameLabel"/>
<element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#TypedElement"/>
@@ -5759,23 +5757,6 @@
<element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_EZYD8XuyEemSm8y_ktEBHQ" x="480" y="40"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="__5GZ4Hu1EemSm8y_ktEBHQ" type="Stereotype_Shape" fillColor="12632256">
- <children xmi:type="notation:DecorationNode" xmi:id="__5GZ4nu1EemSm8y_ktEBHQ" type="Stereotype_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="__5GZ43u1EemSm8y_ktEBHQ" visible="false" type="Stereotype_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="__5GZ5Hu1EemSm8y_ktEBHQ"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="__5GZ5Xu1EemSm8y_ktEBHQ"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="__5GZ5nu1EemSm8y_ktEBHQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="__5GZ53u1EemSm8y_ktEBHQ"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="__5GZ6Hu1EemSm8y_ktEBHQ" visible="false" type="Stereotype_OperationCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="__5GZ6Xu1EemSm8y_ktEBHQ"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="__5GZ6nu1EemSm8y_ktEBHQ"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="__5GZ63u1EemSm8y_ktEBHQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="__5GZ7Hu1EemSm8y_ktEBHQ"/>
- </children>
- <element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_rm64QCtxEeeZI6rMTYV60w"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="__5GZ4Xu1EemSm8y_ktEBHQ" x="160" y="40"/>
- </children>
<children xmi:type="notation:Shape" xmi:id="_D01eEDuBEeqRdYL4l4j83w" type="Stereotype_Shape">
<children xmi:type="notation:DecorationNode" xmi:id="_D01eEjuBEeqRdYL4l4j83w" type="Stereotype_NameLabel"/>
<children xmi:type="notation:BasicCompartment" xmi:id="_D01eEzuBEeqRdYL4l4j83w" type="Stereotype_AttributeCompartment">
@@ -5842,61 +5823,97 @@
<element xmi:type="uml:Stereotype" href="IoT-ML.profile.uml#_Ik8FAEZ2Eemjs4KMC2ChPg"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_VUg6kT6uEeqAfKdldzYc-w" x="860" y="380"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_9Wq9MD60EeqbWfODvTKHTw" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_9Wq9MT60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9Wq9Mz60EeqbWfODvTKHTw" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Signal"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9Wq9Mj60EeqbWfODvTKHTw" x="1140" y="40"/>
+ <children xmi:type="notation:Shape" xmi:id="_-gPHsHKFEeqvaKCRysa56A" type="Class_MetaclassShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-gPHsnKFEeqvaKCRysa56A" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-gPHsXKFEeqvaKCRysa56A" x="800" y="40"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_9W0uMD60EeqbWfODvTKHTw" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_9W0uMT60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9W0uMz60EeqbWfODvTKHTw" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#BehavioralFeature"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9W0uMj60EeqbWfODvTKHTw" x="980" y="40"/>
+ <children xmi:type="notation:Shape" xmi:id="_-MhFAHKGEeqvaKCRysa56A" type="Class_MetaclassShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-MhFAnKGEeqvaKCRysa56A" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Reception"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-MhFAXKGEeqvaKCRysa56A" x="960" y="40"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_9W8C8D60EeqbWfODvTKHTw" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_9W8C8T60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9W8C8z60EeqbWfODvTKHTw" name="BASE_ELEMENT">
+ <children xmi:type="notation:Shape" xmi:id="_QMLH0HOgEeqQkfqnZhbFqQ" type="Class_MetaclassShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QMLH0nOgEeqQkfqnZhbFqQ" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Comment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QMLH0XOgEeqQkfqnZhbFqQ" x="180" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nFFZR3OgEeqQkfqnZhbFqQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nFFZSHOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nFFZSnOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#TypedElement"/>
</styles>
<element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9W8C8j60EeqbWfODvTKHTw" x="820" y="40"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nFFZSXOgEeqQkfqnZhbFqQ" x="820" y="40"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_9XCwoz60EeqbWfODvTKHTw" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_9XCwpD60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9XCwpj60EeqbWfODvTKHTw" name="BASE_ELEMENT">
+ <children xmi:type="notation:Shape" xmi:id="_nFPKR3OgEeqQkfqnZhbFqQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nFPKSHOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nFPKSnOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/>
</styles>
<element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9XCwpT60EeqbWfODvTKHTw" x="680" y="40"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nFPKSXOgEeqQkfqnZhbFqQ" x="680" y="40"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_9XNvwD60EeqbWfODvTKHTw" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_9XNvwT60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9XNvwz60EeqbWfODvTKHTw" name="BASE_ELEMENT">
+ <children xmi:type="notation:Shape" xmi:id="_nFYUPXOgEeqQkfqnZhbFqQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nFYUPnOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nFYUQHOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Type"/>
</styles>
<element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9XNvwj60EeqbWfODvTKHTw" x="1400" y="40"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nFYUP3OgEeqQkfqnZhbFqQ" x="1400" y="40"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_9XVEgD60EeqbWfODvTKHTw" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_9XVEgT60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9XVEgz60EeqbWfODvTKHTw" name="BASE_ELEMENT">
+ <children xmi:type="notation:Shape" xmi:id="_nFrPI3OgEeqQkfqnZhbFqQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nFrPJHOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nFrPJnOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Namespace"/>
</styles>
<element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9XVEgj60EeqbWfODvTKHTw" x="1540" y="40"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nFrPJXOgEeqQkfqnZhbFqQ" x="1540" y="40"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_9XcZQD60EeqbWfODvTKHTw" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_9XcZQT60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9XcZQz60EeqbWfODvTKHTw" name="BASE_ELEMENT">
+ <children xmi:type="notation:Shape" xmi:id="_nF1AJ3OgEeqQkfqnZhbFqQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nF1AKHOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nF1AKnOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Association"/>
</styles>
<element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9XcZQj60EeqbWfODvTKHTw" x="540" y="40"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nF1AKXOgEeqQkfqnZhbFqQ" x="540" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nF-xKnOgEeqQkfqnZhbFqQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nF-xK3OgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nF-xLXOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nF-xLHOgEeqQkfqnZhbFqQ" x="1000" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nGH7GnOgEeqQkfqnZhbFqQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nGH7G3OgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nGH7HXOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Reception"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nGH7HHOgEeqQkfqnZhbFqQ" x="1160" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nGknA3OgEeqQkfqnZhbFqQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nGknBHOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nGknBnOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Comment"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nGknBXOgEeqQkfqnZhbFqQ" x="380" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_v2bTEHOgEeqQkfqnZhbFqQ" type="Class_MetaclassShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_v2bTEnOgEeqQkfqnZhbFqQ" type="Class_MetaclassNameLabel"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v2bTEXOgEeqQkfqnZhbFqQ" x="20" y="40"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_v2lEGnOgEeqQkfqnZhbFqQ" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_v2lEG3OgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_v2lEHXOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v2lEHHOgEeqQkfqnZhbFqQ" x="200"/>
</children>
<styles xmi:type="notation:StringValueStyle" xmi:id="_7AcL8UZ6Eemjs4KMC2ChPg" name="diagram_compatibility_version" stringValue="1.4.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_7AcL8kZ6Eemjs4KMC2ChPg"/>
@@ -5904,23 +5921,6 @@
<owner xmi:type="uml:Package" href="IoT-ML.profile.uml#_aARI4EZ1Eemjs4KMC2ChPg"/>
</styles>
<element xmi:type="uml:Package" href="IoT-ML.profile.uml#_aARI4EZ1Eemjs4KMC2ChPg"/>
- <edges xmi:type="notation:Connector" xmi:id="_M9JlsHfqEemED9p17L-bjA" type="Generalization_Edge" source="_O1vY8FbCEemms65MbAzNPw" target="_HaXSkHfqEemED9p17L-bjA">
- <children xmi:type="notation:DecorationNode" xmi:id="_M9Jls3fqEemED9p17L-bjA" type="Generalization_StereotypeLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_M9JltHfqEemED9p17L-bjA" y="60"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_M9JlsXfqEemED9p17L-bjA"/>
- <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_M1bNEHfqEemED9p17L-bjA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_M9JlsnfqEemED9p17L-bjA" points="[60, 200, -643984, -643984]$[60, 140, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_M9iAMHfqEemED9p17L-bjA" id="(0.4,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_M9iAMXfqEemED9p17L-bjA" id="(0.4,1.0)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_QzTBQHuiEemSm8y_ktEBHQ" type="Extension_Edge" source="__dF-gFbCEemms65MbAzNPw" target="_P264kHuiEemSm8y_ktEBHQ">
- <styles xmi:type="notation:FontStyle" xmi:id="_QzTBQXuiEemSm8y_ktEBHQ"/>
- <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_QtDPUHuiEemSm8y_ktEBHQ"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QzTBQnuiEemSm8y_ktEBHQ" points="[840, 200, -643984, -643984]$[840, 90, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qzl8MHuiEemSm8y_ktEBHQ" id="(0.4,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qzl8MXuiEemSm8y_ktEBHQ" id="(0.5,1.0)"/>
- </edges>
<edges xmi:type="notation:Connector" xmi:id="_HXX7kHuxEemSm8y_ktEBHQ" type="Extension_Edge" source="_tsgFMFbXEemms65MbAzNPw" target="_F2O48HuxEemSm8y_ktEBHQ">
<styles xmi:type="notation:FontStyle" xmi:id="_HXX7kXuxEemSm8y_ktEBHQ"/>
<element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_HKSh0HuxEemSm8y_ktEBHQ"/>
@@ -5935,24 +5935,6 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZUR7IHuzEemSm8y_ktEBHQ" id="(0.44554455445544555,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZUR7IXuzEemSm8y_ktEBHQ" id="(0.6,1.0)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_vBegAHu2EemSm8y_ktEBHQ" type="Generalization_Edge" source="_M1dhQFbYEemms65MbAzNPw" target="__5GZ4Hu1EemSm8y_ktEBHQ">
- <children xmi:type="notation:DecorationNode" xmi:id="_vBegA3u2EemSm8y_ktEBHQ" type="Generalization_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_AXUxgHu3EemSm8y_ktEBHQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_vBegBHu2EemSm8y_ktEBHQ" y="60"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_vBegAXu2EemSm8y_ktEBHQ"/>
- <element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_u13s8Hu2EemSm8y_ktEBHQ"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_vBegAnu2EemSm8y_ktEBHQ" points="[240, 200, -643984, -643984]$[240, 140, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vBxa8Hu2EemSm8y_ktEBHQ" id="(0.6,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vBxa8Xu2EemSm8y_ktEBHQ" id="(0.5797101449275363,1.0)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_rTrRMHu5EemSm8y_ktEBHQ" type="Extension_Edge" source="_J73qgFbDEemms65MbAzNPw" target="_Bvg5AHuiEemSm8y_ktEBHQ">
- <styles xmi:type="notation:FontStyle" xmi:id="_rTrRMXu5EemSm8y_ktEBHQ"/>
- <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_rSovYHu5EemSm8y_ktEBHQ"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rTrRMnu5EemSm8y_ktEBHQ" points="[1000, 200, -643984, -643984]$[1000, 90, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rURuIHu5EemSm8y_ktEBHQ" id="(0.4,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rURuIXu5EemSm8y_ktEBHQ" id="(0.6,1.0)"/>
- </edges>
<edges xmi:type="notation:Connector" xmi:id="_QH8GYHu-EemSm8y_ktEBHQ" type="Generalization_Edge" source="_2o3IwFbCEemms65MbAzNPw" target="_tsgFMFbXEemms65MbAzNPw">
<children xmi:type="notation:DecorationNode" xmi:id="_QH8GY3u-EemSm8y_ktEBHQ" type="Generalization_StereotypeLabel">
<styles xmi:type="notation:BooleanValueStyle" xmi:id="_LQTOMD6vEeqAfKdldzYc-w" name="IS_UPDATED_POSITION" booleanValue="true"/>
@@ -6009,75 +5991,123 @@
<element xmi:type="uml:Generalization" href="IoT-ML.profile.uml#_a1cecFa9EemBYs5-fDI8uw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_RYQq8j6vEeqAfKdldzYc-w" points="[775, 430, -643984, -643984]$[860, 430, -643984, -643984]"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_9WrkQD60EeqbWfODvTKHTw" type="StereotypeCommentLink" source="_Bvg5AHuiEemSm8y_ktEBHQ" target="_9Wq9MD60EeqbWfODvTKHTw">
- <styles xmi:type="notation:FontStyle" xmi:id="_9WrkQT60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9WrkRT60EeqbWfODvTKHTw" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Signal"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9WrkQj60EeqbWfODvTKHTw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9WrkQz60EeqbWfODvTKHTw"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9WrkRD60EeqbWfODvTKHTw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_0sGesHKGEeqvaKCRysa56A" type="Extension_Edge" source="__dF-gFbCEemms65MbAzNPw" target="_-gPHsHKFEeqvaKCRysa56A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_0sGesXKGEeqvaKCRysa56A"/>
+ <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_0rWQwHKGEeqvaKCRysa56A"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0sGesnKGEeqvaKCRysa56A" points="[860, 200, -643984, -643984]$[860, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0sZZoHKGEeqvaKCRysa56A" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0sZZoXKGEeqvaKCRysa56A" id="(0.6,1.0)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_9W0uND60EeqbWfODvTKHTw" type="StereotypeCommentLink" source="_P264kHuiEemSm8y_ktEBHQ" target="_9W0uMD60EeqbWfODvTKHTw">
- <styles xmi:type="notation:FontStyle" xmi:id="_9W0uNT60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9W0uOT60EeqbWfODvTKHTw" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#BehavioralFeature"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9W0uNj60EeqbWfODvTKHTw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9W0uNz60EeqbWfODvTKHTw"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9W0uOD60EeqbWfODvTKHTw"/>
+ <edges xmi:type="notation:Connector" xmi:id="__kasEHKGEeqvaKCRysa56A" type="Extension_Edge" source="_J73qgFbDEemms65MbAzNPw" target="_-MhFAHKGEeqvaKCRysa56A">
+ <styles xmi:type="notation:FontStyle" xmi:id="__kasEXKGEeqvaKCRysa56A"/>
+ <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#__jhUMHKGEeqvaKCRysa56A"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__kasEnKGEeqvaKCRysa56A" points="[1000, 200, -643984, -643984]$[1000, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__lAh8HKGEeqvaKCRysa56A" id="(0.3418803418803419,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__lAh8XKGEeqvaKCRysa56A" id="(0.4,1.0)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_9W8C9D60EeqbWfODvTKHTw" type="StereotypeCommentLink" source="_F2O48HuxEemSm8y_ktEBHQ" target="_9W8C8D60EeqbWfODvTKHTw">
- <styles xmi:type="notation:FontStyle" xmi:id="_9W8C9T60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9W8C-T60EeqbWfODvTKHTw" name="BASE_ELEMENT">
+ <edges xmi:type="notation:Connector" xmi:id="_RFrisHOgEeqQkfqnZhbFqQ" type="Extension_Edge" source="_M1dhQFbYEemms65MbAzNPw" target="_QMLH0HOgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_RFrisXOgEeqQkfqnZhbFqQ"/>
+ <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_REyK0HOgEeqQkfqnZhbFqQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_RFrisnOgEeqQkfqnZhbFqQ" points="[240, 200, -643984, -643984]$[240, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RGIOoHOgEeqQkfqnZhbFqQ" id="(0.6,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_RGIOoXOgEeqQkfqnZhbFqQ" id="(0.6,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_nFFZS3OgEeqQkfqnZhbFqQ" type="StereotypeCommentLink" source="_F2O48HuxEemSm8y_ktEBHQ" target="_nFFZR3OgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_nFFZTHOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nFFZUHOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#TypedElement"/>
</styles>
<element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9W8C9j60EeqbWfODvTKHTw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9W8C9z60EeqbWfODvTKHTw"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9W8C-D60EeqbWfODvTKHTw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nFFZTXOgEeqQkfqnZhbFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nFFZTnOgEeqQkfqnZhbFqQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nFFZT3OgEeqQkfqnZhbFqQ"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_9XCwpz60EeqbWfODvTKHTw" type="StereotypeCommentLink" source="_EZYD8HuyEemSm8y_ktEBHQ" target="_9XCwoz60EeqbWfODvTKHTw">
- <styles xmi:type="notation:FontStyle" xmi:id="_9XCwqD60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9XDXsj60EeqbWfODvTKHTw" name="BASE_ELEMENT">
+ <edges xmi:type="notation:Connector" xmi:id="_nFPKS3OgEeqQkfqnZhbFqQ" type="StereotypeCommentLink" source="_EZYD8HuyEemSm8y_ktEBHQ" target="_nFPKR3OgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_nFPKTHOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nFPKUHOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/>
</styles>
<element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9XCwqT60EeqbWfODvTKHTw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9XDXsD60EeqbWfODvTKHTw"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9XDXsT60EeqbWfODvTKHTw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nFPKTXOgEeqQkfqnZhbFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nFPKTnOgEeqQkfqnZhbFqQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nFPKT3OgEeqQkfqnZhbFqQ"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_9XNvxD60EeqbWfODvTKHTw" type="StereotypeCommentLink" source="_cJfUwDuBEeqRdYL4l4j83w" target="_9XNvwD60EeqbWfODvTKHTw">
- <styles xmi:type="notation:FontStyle" xmi:id="_9XNvxT60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9XNvyT60EeqbWfODvTKHTw" name="BASE_ELEMENT">
+ <edges xmi:type="notation:Connector" xmi:id="_nFYUQXOgEeqQkfqnZhbFqQ" type="StereotypeCommentLink" source="_cJfUwDuBEeqRdYL4l4j83w" target="_nFYUPXOgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_nFYUQnOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nFYURnOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Type"/>
</styles>
<element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9XNvxj60EeqbWfODvTKHTw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9XNvxz60EeqbWfODvTKHTw"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9XNvyD60EeqbWfODvTKHTw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nFYUQ3OgEeqQkfqnZhbFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nFYURHOgEeqQkfqnZhbFqQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nFYURXOgEeqQkfqnZhbFqQ"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_9XVEhD60EeqbWfODvTKHTw" type="StereotypeCommentLink" source="_lm7fkDuBEeqRdYL4l4j83w" target="_9XVEgD60EeqbWfODvTKHTw">
- <styles xmi:type="notation:FontStyle" xmi:id="_9XVEhT60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9XVEiT60EeqbWfODvTKHTw" name="BASE_ELEMENT">
+ <edges xmi:type="notation:Connector" xmi:id="_nFrPJ3OgEeqQkfqnZhbFqQ" type="StereotypeCommentLink" source="_lm7fkDuBEeqRdYL4l4j83w" target="_nFrPI3OgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_nFrPKHOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nFrPLHOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Namespace"/>
</styles>
<element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9XVEhj60EeqbWfODvTKHTw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9XVEhz60EeqbWfODvTKHTw"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9XVEiD60EeqbWfODvTKHTw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nFrPKXOgEeqQkfqnZhbFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nFrPKnOgEeqQkfqnZhbFqQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nFrPK3OgEeqQkfqnZhbFqQ"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_9XcZRD60EeqbWfODvTKHTw" type="StereotypeCommentLink" source="_G6n5UD6tEeqAfKdldzYc-w" target="_9XcZQD60EeqbWfODvTKHTw">
- <styles xmi:type="notation:FontStyle" xmi:id="_9XcZRT60EeqbWfODvTKHTw"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9XdAUD60EeqbWfODvTKHTw" name="BASE_ELEMENT">
+ <edges xmi:type="notation:Connector" xmi:id="_nF1AK3OgEeqQkfqnZhbFqQ" type="StereotypeCommentLink" source="_G6n5UD6tEeqAfKdldzYc-w" target="_nF1AJ3OgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_nF1ALHOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nF1AMHOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
<eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Association"/>
</styles>
<element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9XcZRj60EeqbWfODvTKHTw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9XcZRz60EeqbWfODvTKHTw"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9XcZSD60EeqbWfODvTKHTw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nF1ALXOgEeqQkfqnZhbFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nF1ALnOgEeqQkfqnZhbFqQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nF1AL3OgEeqQkfqnZhbFqQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_nF-xLnOgEeqQkfqnZhbFqQ" type="StereotypeCommentLink" source="_-gPHsHKFEeqvaKCRysa56A" target="_nF-xKnOgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_nF-xL3OgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nF-xM3OgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nF-xMHOgEeqQkfqnZhbFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nF-xMXOgEeqQkfqnZhbFqQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nF-xMnOgEeqQkfqnZhbFqQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_nGH7HnOgEeqQkfqnZhbFqQ" type="StereotypeCommentLink" source="_-MhFAHKGEeqvaKCRysa56A" target="_nGH7GnOgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_nGH7H3OgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nGRsEXOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Reception"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nGH7IHOgEeqQkfqnZhbFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nGH7IXOgEeqQkfqnZhbFqQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nGRsEHOgEeqQkfqnZhbFqQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_nGknB3OgEeqQkfqnZhbFqQ" type="StereotypeCommentLink" source="_QMLH0HOgEeqQkfqnZhbFqQ" target="_nGknA3OgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_nGknCHOgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nGknDHOgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Comment"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nGknCXOgEeqQkfqnZhbFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nGknCnOgEeqQkfqnZhbFqQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nGknC3OgEeqQkfqnZhbFqQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_v2lEHnOgEeqQkfqnZhbFqQ" type="StereotypeCommentLink" source="_v2bTEHOgEeqQkfqnZhbFqQ" target="_v2lEGnOgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_v2lEH3OgEeqQkfqnZhbFqQ"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_v2lEI3OgEeqQkfqnZhbFqQ" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_v2lEIHOgEeqQkfqnZhbFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_v2lEIXOgEeqQkfqnZhbFqQ"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_v2lEInOgEeqQkfqnZhbFqQ"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ww1F0HOgEeqQkfqnZhbFqQ" type="Extension_Edge" source="_O1vY8FbCEemms65MbAzNPw" target="_v2bTEHOgEeqQkfqnZhbFqQ">
+ <styles xmi:type="notation:FontStyle" xmi:id="_ww1F0XOgEeqQkfqnZhbFqQ"/>
+ <element xmi:type="uml:Extension" href="IoT-ML.profile.uml#_wwrU0HOgEeqQkfqnZhbFqQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ww1F0nOgEeqQkfqnZhbFqQ" points="[60, 200, -643984, -643984]$[60, 90, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wxRxwHOgEeqQkfqnZhbFqQ" id="(0.4,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wxRxwXOgEeqQkfqnZhbFqQ" id="(0.4,1.0)"/>
</edges>
</notation:Diagram>
</xmi:XMI>
diff --git a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.uml b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.uml
index 72bf44f..7953a4c 100644
--- a/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.uml
+++ b/org.eclipse.papyrus.iotml.profile/model/IoT-ML.profile.uml
@@ -830,17 +830,19 @@
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_aARI4EZ1Eemjs4KMC2ChPg" name="WoT">
<packagedElement xmi:type="uml:Stereotype" xmi:id="_npc7YEZ1Eemjs4KMC2ChPg" name="Thing">
- <ownedComment xmi:type="uml:Comment" xmi:id="_auHDUFetEemhlNDbySlnYA">
- <body>"title" is UML::NamedElement::name</body>
- </ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_dnaywFetEemhlNDbySlnYA">
- <body>"description" is a Comment attached to the Class on which <<Thing>> is applied.
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_zfNT8HJpEeqvaKCRysa56A" name="title" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_auHDUFetEemhlNDbySlnYA">
+ <body>"title" is UML::NamedElement::name</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_2vpJ8HJpEeqvaKCRysa56A" name="description" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_dnaywFetEemhlNDbySlnYA">
+ <body>"description" is a Comment attached to the Class on which <<Thing>> is applied.
"descriptions" is several Comments attached to the Class on which <<Thing>> is applied.</body>
- </ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_ospvwD61EeqbWfODvTKHTw">
- <body>"security" is derived from "securityDefinition". Therefore we cannot have securityDefinitions that are not active in security.</body>
- </ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_M1bNEHfqEemED9p17L-bjA" general="_mxPqICtuEeeZI6rMTYV60w"/>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_vXKfIDeSEeqyIeUo_DCO7w" name="base">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_vXKfITeSEeqyIeUo_DCO7w"/>
@@ -855,33 +857,48 @@
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rhKfwFa7EemBYs5-fDI8uw"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_rhVe4Fa7EemBYs5-fDI8uw" value="1"/>
</ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_-lF1g3JkEeqvaKCRysa56A" name="security" type="_GdG10EZ2Eemjs4KMC2ChPg" association="_-lF1gHJkEeqvaKCRysa56A">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_DNQTcHJlEeqvaKCRysa56A" value="*"/>
+ </ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_f_pH4Fa8EemBYs5-fDI8uw" name="securityDefinitions" type="_GdG10EZ2Eemjs4KMC2ChPg" association="_f_jBQFa8EemBYs5-fDI8uw">
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_m4LtAFa8EemBYs5-fDI8uw" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_0AhcQVa8EemBYs5-fDI8uw" name="links" type="_QWwbgEZ2Eemjs4KMC2ChPg" isDerived="true" association="_0AgOIFa8EemBYs5-fDI8uw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_74kyoHJpEeqvaKCRysa56A">
+ <body>"links" is derived from the associations for which the Thing is a source.</body>
+ </ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_3v1moFa8EemBYs5-fDI8uw"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_3wIhkFa8EemBYs5-fDI8uw" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_8yTa8Fa8EemBYs5-fDI8uw" name="events" type="_LxXkwEZ2Eemjs4KMC2ChPg" association="_8yRlwFa8EemBYs5-fDI8uw">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_8yTa8Fa8EemBYs5-fDI8uw" name="events" type="_LxXkwEZ2Eemjs4KMC2ChPg" isDerived="true" association="_8yRlwFa8EemBYs5-fDI8uw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_A5gV4HJqEeqvaKCRysa56A">
+ <body>"events" is derived from the signals, stereotyped <<EventAffordance>>, referenced by the triggers of the state machines acting as classifier behavior of <<Thing>>.</body>
+ </ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9HYa0HuiEemSm8y_ktEBHQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9HiL0HuiEemSm8y_ktEBHQ" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_HCG20la9EemBYs5-fDI8uw" name="actions" type="_LLR1IEZ2Eemjs4KMC2ChPg" association="_HCFosFa9EemBYs5-fDI8uw">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_HCG20la9EemBYs5-fDI8uw" name="actions" type="_LLR1IEZ2Eemjs4KMC2ChPg" isDerived="true" association="_HCFosFa9EemBYs5-fDI8uw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Je7TkHJqEeqvaKCRysa56A">
+ <body>"actions" is derived from the Operations of <<Thing>> stereotyped <<ActionAffordance>>.</body>
+ </ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_7mi6MHuiEemSm8y_ktEBHQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_7m11IHuiEemSm8y_ktEBHQ" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_S27vwFa9EemBYs5-fDI8uw" name="properties" type="_JrT3MEZ2Eemjs4KMC2ChPg" association="_S26hoFa9EemBYs5-fDI8uw">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_S27vwFa9EemBYs5-fDI8uw" name="properties" type="_JrT3MEZ2Eemjs4KMC2ChPg" isDerived="true" association="_S26hoFa9EemBYs5-fDI8uw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M1TZgHJqEeqvaKCRysa56A">
+ <body>"properties" is derived from the Properties of <<Thing>> stereotyped <<PropertyAffordance>>.</body>
+ </ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UYUqAFa9EemBYs5-fDI8uw"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UYiscFa9EemBYs5-fDI8uw" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_yIsMcDuAEeqRdYL4l4j83w" name="version">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_JPzR8DuBEeqRdYL4l4j83w" name="type" type="_nTmsgDtwEeqRdYL4l4j83w" association="_JPpg8DuBEeqRdYL4l4j83w">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_JPzR8DuBEeqRdYL4l4j83w" name="aType" type="_nTmsgDtwEeqRdYL4l4j83w" association="_JPpg8DuBEeqRdYL4l4j83w">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_J8Dk4D37EeqaztyFqSGQbA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_J8JrgD37EeqaztyFqSGQbA" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_NnuUczuBEeqRdYL4l4j83w" name="context" type="_CRpAQDtxEeqRdYL4l4j83w" association="_NnuUcDuBEeqRdYL4l4j83w">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_NnuUczuBEeqRdYL4l4j83w" name="aContext" type="_CRpAQDtxEeqRdYL4l4j83w" association="_NnuUcDuBEeqRdYL4l4j83w">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_KT5dID37EeqaztyFqSGQbA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_KT9HgD37EeqaztyFqSGQbA" value="*"/>
</ownedAttribute>
@@ -889,18 +906,29 @@
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ILUgsDuCEeqRdYL4l4j83w"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ILeRsDuCEeqRdYL4l4j83w" value="*"/>
</ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_wwrU0nOgEeqQkfqnZhbFqQ" name="base_Class" association="_wwrU0HOgEeqQkfqnZhbFqQ">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_wwrU03OgEeqQkfqnZhbFqQ"/>
+ </ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_GdG10EZ2Eemjs4KMC2ChPg" name="SecurityScheme">
- <ownedComment xmi:type="uml:Comment" xmi:id="_D_7xkHukEemSm8y_ktEBHQ">
- <body>"description" is a Comment attached to the Classifier on which <<SecurityScheme>> is applied.</body>
- </ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_HkkSYD6mEeqAfKdldzYc-w">
- <body>"name" is UML::NamedElement::name</body>
- </ownedComment>
<ownedAttribute xmi:type="uml:Property" xmi:id="_ZH7hMnuzEemSm8y_ktEBHQ" name="base_Classifier" association="_ZH7hMHuzEemSm8y_ktEBHQ">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZH7hM3uzEemSm8y_ktEBHQ"/>
</ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_iyd0YHJqEeqvaKCRysa56A" name="title" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_iyd0YXJqEeqvaKCRysa56A">
+ <body>"title" is UML::NamedElement::name</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_iynlYHJqEeqvaKCRysa56A" name="description" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_iynlYXJqEeqvaKCRysa56A">
+ <body>"description" is a Comment attached to the Class on which <<SecurityScheme>> is applied.
+"descriptions" is several Comments attached to the Class on which <<SecurityScheme>> is applied.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_HnGuUEZ3Eemjs4KMC2ChPg" name="scheme" type="_P5y7gHukEemSm8y_ktEBHQ"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_bjSuMHukEemSm8y_ktEBHQ" name="proxy" association="_bjJkQHukEemSm8y_ktEBHQ">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
@@ -946,17 +974,23 @@
<ownedAttribute xmi:type="uml:Property" xmi:id="_SezD8D6pEeqAfKdldzYc-w" name="flow" type="_zUGtED6pEeqAfKdldzYc-w"/>
</packagedElement>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_Ik8FAEZ2Eemjs4KMC2ChPg" name="InteractionAffordance" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_jmMAwD37EeqaztyFqSGQbA">
- <body>"title" is UML::NamedElement::name</body>
- </ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_lWqswHukEemSm8y_ktEBHQ">
- <body>"description" is a Comment attached to the XXX on which <<IP>> is applied.</body>
- </ownedComment>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_EdgysHJrEeqvaKCRysa56A" name="title" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_EdgysXJrEeqvaKCRysa56A">
+ <body>"title" is UML::NamedElement::name</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_EdgysnJrEeqvaKCRysa56A" name="description" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_lWqswHukEemSm8y_ktEBHQ">
+ <body>"description" is a Comment attached to the XXX on which <<InteractionAffordance>> is applied.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_MN9bMFa-EemBYs5-fDI8uw" name="forms" type="_Pd7WEEZ2Eemjs4KMC2ChPg" association="_MN7mAFa-EemBYs5-fDI8uw">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_NqdOYFa-EemBYs5-fDI8uw" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Nqse8Fa-EemBYs5-fDI8uw" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_lcepcD36EeqaztyFqSGQbA" name="type" type="_nTmsgDtwEeqRdYL4l4j83w" association="_lca_ED36EeqaztyFqSGQbA">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_lcepcD36EeqaztyFqSGQbA" name="aType" type="_nTmsgDtwEeqRdYL4l4j83w" association="_lca_ED36EeqaztyFqSGQbA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_L9kwsD37EeqaztyFqSGQbA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_L9obED37EeqaztyFqSGQbA" value="*"/>
</ownedAttribute>
@@ -971,23 +1005,27 @@
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_LLR1IEZ2Eemjs4KMC2ChPg" name="ActionAffordance">
- <ownedComment xmi:type="uml:Comment" xmi:id="_TtcIEHurEemSm8y_ktEBHQ">
- <body>"input" and "output" are to be Parameters (with directions in, out, return, etc...) contained by the Operation on which <<Action>> is applied.
-In this case DataScheme should be applied on the Parameter that serves as input or output.</body>
- </ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_Yy-3cFa9EemBYs5-fDI8uw" general="_Ik8FAEZ2Eemjs4KMC2ChPg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_VXIwwFa_EemBYs5-fDI8uw" name="input" type="_OOxbUEZ2Eemjs4KMC2ChPg" association="_VXHioFa_EemBYs5-fDI8uw">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_0rWQwnKGEeqvaKCRysa56A" name="base_Operation" association="_0rWQwHKGEeqvaKCRysa56A">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_0rWQw3KGEeqvaKCRysa56A"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_VXIwwFa_EemBYs5-fDI8uw" name="input" type="_OOxbUEZ2Eemjs4KMC2ChPg" isDerived="true" association="_VXHioFa_EemBYs5-fDI8uw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_U7zfMHJtEeqvaKCRysa56A">
+ <body>"input" and "output" are to be Parameters (with directions in, out, return, etc...) contained by the BehavioralFeature on which <<ActionAffordance>> is applied.
+In this case DataScheme should be applied on the Parameter that serves as input or output.</body>
+ </ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_XmC4UFa_EemBYs5-fDI8uw"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_XmN3cFa_EemBYs5-fDI8uw" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_YicPIVa_EemBYs5-fDI8uw" name="output" type="_OOxbUEZ2Eemjs4KMC2ChPg" association="_YiboEFa_EemBYs5-fDI8uw">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_YicPIVa_EemBYs5-fDI8uw" name="output" type="_OOxbUEZ2Eemjs4KMC2ChPg" isDerived="true" association="_YiboEFa_EemBYs5-fDI8uw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_VBURUHJtEeqvaKCRysa56A">
+ <body>"input" and "output" are to be Parameters (with directions in, out, return, etc...) contained by the BehavioralFeature on which <<ActionAffordance>> is applied.
+In this case DataScheme should be applied on the Parameter that serves as input or output.</body>
+ </ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_RvktMHurEemSm8y_ktEBHQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_RvueMHurEemSm8y_ktEBHQ" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_QtDPUnuiEemSm8y_ktEBHQ" name="base_BehavioralFeature" association="_QtDPUHuiEemSm8y_ktEBHQ">
- <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#BehavioralFeature"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_QtDPU3uiEemSm8y_ktEBHQ"/>
- </ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_vn7DYDuBEeqRdYL4l4j83w" name="safe">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
</ownedAttribute>
@@ -996,18 +1034,10 @@
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_LxXkwEZ2Eemjs4KMC2ChPg" name="EventAffordance">
- <ownedComment xmi:type="uml:Comment" xmi:id="_3NRf8Hu6EemSm8y_ktEBHQ">
- <body>"type" is inferred from the type of the Signal's Properties on which <<Event>> is applied.
-They are TypedElements so use the same inference algorithm as for TypedElements.
-One of boolean, integer, string, object, array, null.</body>
- </ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_3NRf8Xu6EemSm8y_ktEBHQ">
- <body>"const" is the TypedElement::defaultValue of the Property contained by the Signal stereotyped <<Event>>.</body>
- </ownedComment>
<generalization xmi:type="uml:Generalization" xmi:id="_ZbnkwFa9EemBYs5-fDI8uw" general="_Ik8FAEZ2Eemjs4KMC2ChPg"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_rSovYnu5EemSm8y_ktEBHQ" name="base_Signal" association="_rSovYHu5EemSm8y_ktEBHQ">
- <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Signal"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rSovY3u5EemSm8y_ktEBHQ"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="__jhUMnKGEeqvaKCRysa56A" name="base_Reception" association="__jhUMHKGEeqvaKCRysa56A">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Reception"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="__jhUM3KGEeqvaKCRysa56A"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_sh744z6tEeqAfKdldzYc-w" name="data" type="_OOxbUEZ2Eemjs4KMC2ChPg" association="_sh744D6tEeqAfKdldzYc-w">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_yG6H4D6uEeqAfKdldzYc-w"/>
@@ -1024,40 +1054,27 @@
<body>DataSchema should be a TypedElement, i.e., Property for <<Property>>, Parameter for <<Action>> input/output.
The type and multiplicity of the TypedElement gives the nature of the DataSchema (e.g., a Property typed by Integer is an IntegerSchema).</body>
</ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_DwoH8D38EeqaztyFqSGQbA">
- <body>"title" is UML::NamedElement::name</body>
- </ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_gx2SMHuuEemSm8y_ktEBHQ">
- <body>"description" is a Comment attached to the XXX on which <<DataSchema>> is applied.</body>
- </ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_JrgzUHuvEemSm8y_ktEBHQ">
- <body>"type" is inferred from the TypedElement::type on which <<DataSchema>> is applied.
-One of boolean, integer, string, object, array, null.</body>
- </ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_cf1N8HuvEemSm8y_ktEBHQ">
- <body>"const" is the TypedElement::defaultValue of the TypedElement stereotyped <<DataSchema>>.
-An OCL rule should mention that the default value must be a ValueSpecification stereotyped <<DetailedValueSpecification>>, if it is specified for a TypedElement stereotyped <<DataSchema>>.</body>
- </ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_mOh08Hu8EemSm8y_ktEBHQ">
- <body>"minItems" and "maxItems" for an ArraySchema are inferred from the multiplicity.</body>
- </ownedComment>
- <ownedComment xmi:type="uml:Comment" xmi:id="_Ky73oD39EeqaztyFqSGQbA">
- <body>"readOnly" is UML::Property::readOnly.</body>
- </ownedComment>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_l1-zQHJrEeqvaKCRysa56A" name="title" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_l1-zQXJrEeqvaKCRysa56A">
+ <body>"title" is UML::NamedElement::name</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_l2IkQHJrEeqvaKCRysa56A" name="description" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_l2IkQXJrEeqvaKCRysa56A">
+ <body>"description" is a Comment attached to the TypedElement on which <<DataSchema>> is applied.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_HKSh0nuxEemSm8y_ktEBHQ" name="base_TypedElement" association="_HKSh0HuxEemSm8y_ktEBHQ">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#TypedElement"/>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HKSh03uxEemSm8y_ktEBHQ"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_5pThQEZ3Eemjs4KMC2ChPg" name="enum" type="_rm64QCtxEeeZI6rMTYV60w">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_5pThQEZ3Eemjs4KMC2ChPg" name="enum">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_myABUHuvEemSm8y_ktEBHQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_myJyUHuvEemSm8y_ktEBHQ" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_esNTAHu8EemSm8y_ktEBHQ" name="numberInterval" visibility="public">
- <ownedComment xmi:type="uml:Comment" xmi:id="_9I37YD38EeqaztyFqSGQbA">
- <body>"minimum" and "maximum" of NumberSchema and IntegerSchema</body>
- </ownedComment>
- <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Interval"/>
- </ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_NnfYUHu9EemSm8y_ktEBHQ" name="required" visibility="public">
<ownedComment xmi:type="uml:Comment" xmi:id="_CV-SYD39EeqaztyFqSGQbA">
<body>"required" of ObjectSchema</body>
@@ -1080,7 +1097,7 @@
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_u6WAID38EeqaztyFqSGQbA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_u6a4oD38EeqaztyFqSGQbA" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_F_snkj38EeqaztyFqSGQbA" name="type" type="_nTmsgDtwEeqRdYL4l4j83w" association="_F_sAgD38EeqaztyFqSGQbA">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_F_snkj38EeqaztyFqSGQbA" name="aType" type="_nTmsgDtwEeqRdYL4l4j83w" association="_F_sAgD38EeqaztyFqSGQbA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Hqq7oD38EeqaztyFqSGQbA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Hqt-8D38EeqaztyFqSGQbA" value="*"/>
</ownedAttribute>
@@ -1096,12 +1113,40 @@
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_8GcYkD39EeqaztyFqSGQbA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_8GifMD39EeqaztyFqSGQbA" value="*"/>
</ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_w8AFcHJrEeqvaKCRysa56A" name="type" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_JrgzUHuvEemSm8y_ktEBHQ">
+ <body>"type" is inferred from the TypedElement::type on which <<DataSchema>> is applied.
+One of boolean, integer, string, object, array, null.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_R9-4oHJsEeqvaKCRysa56A" name="const" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_cf1N8HuvEemSm8y_ktEBHQ">
+ <body>"const" is the TypedElement::defaultValue of the TypedElement stereotyped <<DataSchema>>.
+An OCL rule should mention that the default value must be a ValueSpecification stereotyped <<DetailedValueSpecification>>, if it is specified for a TypedElement stereotyped <<DataSchema>>.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_XboNEHJsEeqvaKCRysa56A" name="minItems" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_cjiiEHJsEeqvaKCRysa56A">
+ <body>"minItems" and "maxItems" for an ArraySchema are inferred from the multiplicity.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aSSRIHJsEeqvaKCRysa56A" name="maxItems" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_cqih8HJsEeqvaKCRysa56A">
+ <body>"minItems" and "maxItems" for an ArraySchema are inferred from the multiplicity.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_eEORsHJsEeqvaKCRysa56A" name="readOnly" visibility="public" isDerived="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_hK8LAHJsEeqvaKCRysa56A">
+ <body>"readOnly" is UML::Property::readOnly.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ </ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_Pd7WEEZ2Eemjs4KMC2ChPg" name="Form">
- <ownedComment xmi:type="uml:Comment" xmi:id="_kXJSoD62EeqbWfODvTKHTw">
- <body>"security" is derived from "securityDefinition" of Thing that owns this Form.</body>
- </ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_u13s8Hu2EemSm8y_ktEBHQ" general="_rm64QCtxEeeZI6rMTYV60w"/>
<ownedAttribute xmi:type="uml:Property" xmi:id="_ojLt0UZ3Eemjs4KMC2ChPg" name="op" type="_uzR3gHusEemSm8y_ktEBHQ">
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="__v64EFa7EemBYs5-fDI8uw" value="*"/>
<defaultValue xmi:type="uml:InstanceValue" xmi:id="_lMvCYD6sEeqAfKdldzYc-w" type="_uzR3gHusEemSm8y_ktEBHQ" instance="_zHZ_IHusEemSm8y_ktEBHQ"/>
@@ -1128,10 +1173,7 @@
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_AZfZgFa8EemBYs5-fDI8uw"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_AZrmwFa8EemBYs5-fDI8uw" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_siyW8EZ3Eemjs4KMC2ChPg" name="scopes" isDerived="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_g7_pID6wEeqAfKdldzYc-w">
- <body>Derived from scopes of OAuth2SecurityScheme referenced in Form::security</body>
- </ownedComment>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_siyW8EZ3Eemjs4KMC2ChPg" name="scopes">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ovTBwEZ4Eemjs4KMC2ChPg"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ov5esEZ4Eemjs4KMC2ChPg" value="*"/>
@@ -1146,10 +1188,20 @@
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_II2qMz6xEeqAfKdldzYc-w" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_II2qND6xEeqAfKdldzYc-w" value="application/json"/>
</ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_75eDIHJsEeqvaKCRysa56A" name="security" type="_GdG10EZ2Eemjs4KMC2ChPg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_kXJSoD62EeqbWfODvTKHTw">
+ <body>"security" is one entry in the "securityDefinitions" of the Thing that owns this Form.</body>
+ </ownedComment>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_75eDIXJsEeqvaKCRysa56A" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_REyK0nOgEeqQkfqnZhbFqQ" name="base_Comment" association="_REyK0HOgEeqQkfqnZhbFqQ">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Comment"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_REyK03OgEeqQkfqnZhbFqQ"/>
+ </ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_QWwbgEZ2Eemjs4KMC2ChPg" name="Link">
<ownedComment xmi:type="uml:Comment" xmi:id="_4H-44HuzEemSm8y_ktEBHQ">
- <body>A Thing, SecuritySchema, or Form should have an Association stereotyped <<Link>>.
+ <body>A Thing may have an Association stereotyped <<Link>>.
The Association points towards a Classifier which represents the remote object or an abstract entity like Internet.</body>
</ownedComment>
<ownedAttribute xmi:type="uml:Property" xmi:id="_HuUnIj6tEeqAfKdldzYc-w" name="base_Association" association="_HuUnID6tEeqAfKdldzYc-w">
@@ -1238,9 +1290,6 @@
</eAnnotations>
<ownedEnd xmi:type="uml:Property" xmi:id="_bjSuMXukEemSm8y_ktEBHQ" name="securityscheme" type="_GdG10EZ2Eemjs4KMC2ChPg" association="_bjJkQHukEemSm8y_ktEBHQ"/>
</packagedElement>
- <packagedElement xmi:type="uml:Extension" xmi:id="_QtDPUHuiEemSm8y_ktEBHQ" name="E_ActionAffordance_BehavioralFeature1" memberEnd="_QtDPUXuiEemSm8y_ktEBHQ _QtDPUnuiEemSm8y_ktEBHQ">
- <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_QtDPUXuiEemSm8y_ktEBHQ" name="extension_ActionAffordance" type="_LLR1IEZ2Eemjs4KMC2ChPg" aggregation="composite" association="_QtDPUHuiEemSm8y_ktEBHQ"/>
- </packagedElement>
<packagedElement xmi:type="uml:Enumeration" xmi:id="_P5y7gHukEemSm8y_ktEBHQ" name="SecuritySchemeKind">
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_D6sVIHu4EemSm8y_ktEBHQ" name="nosec"/>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_D6sVIXu4EemSm8y_ktEBHQ" name="basic"/>
@@ -1278,9 +1327,6 @@
<packagedElement xmi:type="uml:Extension" xmi:id="_ZH7hMHuzEemSm8y_ktEBHQ" name="E_SecurityScheme_Classifier32" memberEnd="_ZH7hMXuzEemSm8y_ktEBHQ _ZH7hMnuzEemSm8y_ktEBHQ">
<ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_ZH7hMXuzEemSm8y_ktEBHQ" name="extension_SecurityScheme" type="_GdG10EZ2Eemjs4KMC2ChPg" aggregation="composite" association="_ZH7hMHuzEemSm8y_ktEBHQ"/>
</packagedElement>
- <packagedElement xmi:type="uml:Extension" xmi:id="_rSovYHu5EemSm8y_ktEBHQ" name="E_EventAffordance_Signal1" memberEnd="_rSovYXu5EemSm8y_ktEBHQ _rSovYnu5EemSm8y_ktEBHQ">
- <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_rSovYXu5EemSm8y_ktEBHQ" name="extension_EventAffordance" type="_LxXkwEZ2Eemjs4KMC2ChPg" aggregation="composite" association="_rSovYHu5EemSm8y_ktEBHQ"/>
- </packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_upzisHu9EemSm8y_ktEBHQ" memberEnd="_upzis3u9EemSm8y_ktEBHQ _upzitHu9EemSm8y_ktEBHQ">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_upzisXu9EemSm8y_ktEBHQ" source="org.eclipse.papyrus">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_upzisnu9EemSm8y_ktEBHQ" key="nature" value="UML_Nature"/>
@@ -1401,6 +1447,24 @@
</eAnnotations>
<ownedEnd xmi:type="uml:Property" xmi:id="_3YogMD6uEeqAfKdldzYc-w" name="eventaffordance" type="_LxXkwEZ2Eemjs4KMC2ChPg" association="_3YfWQD6uEeqAfKdldzYc-w"/>
</packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_-lF1gHJkEeqvaKCRysa56A" memberEnd="_-lF1g3JkEeqvaKCRysa56A _-lF1hHJkEeqvaKCRysa56A">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-lF1gXJkEeqvaKCRysa56A" source="org.eclipse.papyrus">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-lF1gnJkEeqvaKCRysa56A" key="nature" value="UML_Nature"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_-lF1hHJkEeqvaKCRysa56A" name="thing" type="_npc7YEZ1Eemjs4KMC2ChPg" association="_-lF1gHJkEeqvaKCRysa56A"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_0rWQwHKGEeqvaKCRysa56A" name="E_ActionAffordance_Operation47" memberEnd="_0rWQwXKGEeqvaKCRysa56A _0rWQwnKGEeqvaKCRysa56A">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_0rWQwXKGEeqvaKCRysa56A" name="extension_ActionAffordance" type="_LLR1IEZ2Eemjs4KMC2ChPg" aggregation="composite" association="_0rWQwHKGEeqvaKCRysa56A"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="__jhUMHKGEeqvaKCRysa56A" name="E_EventAffordance_Reception47" memberEnd="__jhUMXKGEeqvaKCRysa56A __jhUMnKGEeqvaKCRysa56A">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="__jhUMXKGEeqvaKCRysa56A" name="extension_EventAffordance" type="_LxXkwEZ2Eemjs4KMC2ChPg" aggregation="composite" association="__jhUMHKGEeqvaKCRysa56A"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_REyK0HOgEeqQkfqnZhbFqQ" name="E_Form_Comment49" memberEnd="_REyK0XOgEeqQkfqnZhbFqQ _REyK0nOgEeqQkfqnZhbFqQ">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_REyK0XOgEeqQkfqnZhbFqQ" name="extension_Form" type="_Pd7WEEZ2Eemjs4KMC2ChPg" aggregation="composite" association="_REyK0HOgEeqQkfqnZhbFqQ"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_wwrU0HOgEeqQkfqnZhbFqQ" name="E_Thing_Class49" memberEnd="_wwrU0XOgEeqQkfqnZhbFqQ _wwrU0nOgEeqQkfqnZhbFqQ">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_wwrU0XOgEeqQkfqnZhbFqQ" name="extension_Thing" type="_npc7YEZ1Eemjs4KMC2ChPg" aggregation="composite" association="_wwrU0HOgEeqQkfqnZhbFqQ"/>
+ </packagedElement>
</packagedElement>
<profileApplication xmi:type="uml:ProfileApplication" xmi:id="_pVg3QApVEei53_EZrjjGeA">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_pVj6kApVEei53_EZrjjGeA" source="http://www.eclipse.org/uml2/2.0.0/UML">
diff --git a/org.eclipse.papyrus.iotml.profile/model/iotml.ecore b/org.eclipse.papyrus.iotml.profile/model/iotml.ecore
index f252c0a..29fe995 100644
--- a/org.eclipse.papyrus.iotml.profile/model/iotml.ecore
+++ b/org.eclipse.papyrus.iotml.profile/model/iotml.ecore
@@ -569,34 +569,53 @@
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="WoT"/>
</eAnnotations>
- <eClassifiers xsi:type="ecore:EClass" name="Thing" eSuperTypes="#//software/artefact/VirtualEntity">
+ <eClassifiers xsi:type="ecore:EClass" name="Thing">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ volatile="true" transient="true" derived="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ volatile="true" transient="true" derived="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="base" ordered="false"
eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="id" ordered="false" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="support" ordered="false"
eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="security" ordered="false"
+ lowerBound="1" upperBound="-1" eType="#//wot/SecurityScheme"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="securityDefinitions"
ordered="false" lowerBound="1" upperBound="-1" eType="#//wot/SecurityScheme"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="links" ordered="false"
upperBound="-1" eType="#//wot/Link" volatile="true" transient="true" derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="events" ordered="false"
- upperBound="-1" eType="#//wot/EventAffordance"/>
+ upperBound="-1" eType="#//wot/EventAffordance" volatile="true" transient="true"
+ derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="actions" ordered="false"
- upperBound="-1" eType="#//wot/ActionAffordance"/>
+ upperBound="-1" eType="#//wot/ActionAffordance" volatile="true" transient="true"
+ derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="properties" ordered="false"
- upperBound="-1" eType="#//wot/PropertyAffordance"/>
+ upperBound="-1" eType="#//wot/PropertyAffordance" volatile="true" transient="true"
+ derived="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="version" ordered="false"
lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="type" ordered="false"
+ <eStructuralFeatures xsi:type="ecore:EReference" name="aType" ordered="false"
upperBound="-1" eType="#//wot/Type"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="context" ordered="false"
+ <eStructuralFeatures xsi:type="ecore:EReference" name="aContext" ordered="false"
upperBound="-1" eType="#//wot/Context"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="forms" ordered="false"
upperBound="-1" eType="#//wot/Form"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Class" ordered="false"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Class"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SecurityScheme">
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Classifier" ordered="false"
eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Classifier"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ volatile="true" transient="true" derived="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ volatile="true" transient="true" derived="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="scheme" ordered="false"
lowerBound="1" eType="#//wot/SecuritySchemeKind"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="proxy" ordered="false"
@@ -681,8 +700,8 @@
lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="EventAffordance" eSuperTypes="#//wot/InteractionAffordance">
- <eStructuralFeatures xsi:type="ecore:EReference" name="base_Signal" ordered="false"
- eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Signal"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Reception" ordered="false"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Reception"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="data" ordered="false"
eType="#//wot/DataSchema"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="subscription" ordered="false"
@@ -691,12 +710,18 @@
eType="#//wot/DataSchema"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InteractionAffordance" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ volatile="true" transient="true" derived="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ volatile="true" transient="true" derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="forms" ordered="false"
lowerBound="1" upperBound="-1" eType="#//wot/Form"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="type" ordered="false"
+ <eStructuralFeatures xsi:type="ecore:EReference" name="aType" ordered="false"
upperBound="-1" eType="#//wot/Type"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="Form" eSuperTypes="#//software/core/structure/MetaValueSpecification">
+ <eClassifiers xsi:type="ecore:EClass" name="Form">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="op" ordered="false" lowerBound="1"
upperBound="-1" eType="#//wot/OpKind" defaultValueLiteral="readproperty"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="href" ordered="false"
@@ -709,11 +734,14 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="subProtocol" ordered="false"
eType="#//wot/SubProtocolKind"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="scopes" ordered="false"
- upperBound="-1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
- volatile="true" transient="true" derived="true"/>
+ upperBound="-1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="response" ordered="false"
eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
defaultValueLiteral="application/json"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="security" ordered="false"
+ lowerBound="1" upperBound="-1" eType="#//wot/SecurityScheme"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Comment" ordered="false"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Comment"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="OpKind">
<eLiterals name="readproperty"/>
@@ -741,19 +769,23 @@
eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Type"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DataSchema">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ volatile="true" transient="true" derived="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ volatile="true" transient="true" derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_TypedElement" ordered="false"
eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//TypedElement"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="enum" ordered="false"
- upperBound="-1" eType="#//software/core/structure/MetaValueSpecification"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="numberInterval" ordered="false"
- lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Interval"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="enum" ordered="false"
+ upperBound="-1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="required" ordered="false"
upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="items" ordered="false"
upperBound="-1" eType="#//wot/DataSchema"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="properties" ordered="false"
upperBound="-1" eType="#//wot/DataSchema"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="type" ordered="false"
+ <eStructuralFeatures xsi:type="ecore:EReference" name="aType" ordered="false"
upperBound="-1" eType="#//wot/Type"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="writeOnly" ordered="false"
lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//Boolean"
@@ -762,14 +794,29 @@
eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="oneOf" ordered="false"
upperBound="-1" eType="#//wot/DataSchema"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ volatile="true" transient="true" derived="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="const" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ volatile="true" transient="true" derived="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="minItems" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//Integer"
+ volatile="true" transient="true" derived="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxItems" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//Integer"
+ volatile="true" transient="true" derived="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="readOnly" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//Boolean"
+ volatile="true" transient="true" derived="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ActionAffordance" eSuperTypes="#//wot/InteractionAffordance">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Operation" ordered="false"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Operation"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="input" ordered="false"
- eType="#//wot/DataSchema"/>
+ eType="#//wot/DataSchema" volatile="true" transient="true" derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="output" ordered="false"
- eType="#//wot/DataSchema"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="base_BehavioralFeature"
- ordered="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//BehavioralFeature"/>
+ eType="#//wot/DataSchema" volatile="true" transient="true" derived="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="safe" ordered="false"
lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="idempotent" ordered="false"
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethod.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethod.java
index fecc283..0193e9e 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethod.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethod.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethodType.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethodType.java
index a7ab5e6..4900210 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethodType.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/AccessMethodType.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
@@ -82,10 +83,6 @@
/**
* The '<em><b>GET</b></em>' literal value.
* <!-- begin-user-doc -->
- * <p>
- * If the meaning of '<em><b>GET</b></em>' literal object isn't clear,
- * there really should be more of a description here...
- * </p>
* <!-- end-user-doc -->
* @see #GET
* @model
@@ -97,10 +94,6 @@
/**
* The '<em><b>SET</b></em>' literal value.
* <!-- begin-user-doc -->
- * <p>
- * If the meaning of '<em><b>SET</b></em>' literal object isn't clear,
- * there really should be more of a description here...
- * </p>
* <!-- end-user-doc -->
* @see #SET
* @model
@@ -112,10 +105,6 @@
/**
* The '<em><b>ACT</b></em>' literal value.
* <!-- begin-user-doc -->
- * <p>
- * If the meaning of '<em><b>ACT</b></em>' literal object isn't clear,
- * there really should be more of a description here...
- * </p>
* <!-- end-user-doc -->
* @see #ACT
* @model
@@ -127,10 +116,6 @@
/**
* The '<em><b>SUBSCRIBE</b></em>' literal value.
* <!-- begin-user-doc -->
- * <p>
- * If the meaning of '<em><b>SUBSCRIBE</b></em>' literal object isn't clear,
- * there really should be more of a description here...
- * </p>
* <!-- end-user-doc -->
* @see #SUBSCRIBE
* @model
@@ -142,10 +127,6 @@
/**
* The '<em><b>UNSUBSCRIBE</b></em>' literal value.
* <!-- begin-user-doc -->
- * <p>
- * If the meaning of '<em><b>UNSUBSCRIBE</b></em>' literal object isn't clear,
- * there really should be more of a description here...
- * </p>
* <!-- end-user-doc -->
* @see #UNSUBSCRIBE
* @model
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Action.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Action.java
index ce3b953..1615e59 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Action.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Action.java
@@ -9,10 +9,12 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
+
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Action</b></em>'.
@@ -24,5 +26,4 @@
* @generated
*/
public interface Action extends Resource {
-
} // Action
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Attribute.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Attribute.java
index c59cadb..3524312 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Attribute.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Attribute.java
@@ -9,11 +9,13 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
import org.eclipse.emf.common.util.EList;
+
import org.eclipse.uml2.uml.Property;
/**
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Gateway.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Gateway.java
index 0bcee62..b7c2095 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Gateway.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Gateway.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Metadata.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Metadata.java
index 7dd59d6..0f6826a 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Metadata.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Metadata.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Parameter.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Parameter.java
index 7e42830..ee796f4 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Parameter.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Parameter.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
@@ -31,7 +32,6 @@
* @generated
*/
public interface Parameter extends TypedElement {
-
/**
* Returns the value of the '<em><b>Base Parameter</b></em>' reference.
* <!-- begin-user-doc -->
@@ -57,4 +57,5 @@
* @generated
*/
void setBase_Parameter(org.eclipse.uml2.uml.Parameter value);
+
} // Parameter
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Property.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Property.java
index f03b138..4958329 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Property.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Property.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
@@ -25,5 +26,4 @@
* @generated
*/
public interface Property extends Resource {
-
} // Property
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Resource.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Resource.java
index 8ae2443..5f6a6c9 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Resource.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Resource.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactFactory.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactFactory.java
index 88262cb..62fcb6c 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactFactory.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactFactory.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactPackage.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactPackage.java
index 1bb14be..09fe66b 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactPackage.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensinactPackage.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensorData.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensorData.java
index 6d907d5..09b8f83 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensorData.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/SensorData.java
@@ -9,10 +9,12 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
+
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Sensor Data</b></em>'.
@@ -24,5 +26,4 @@
* @generated
*/
public interface SensorData extends Resource {
-
} // SensorData
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Service.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Service.java
index 246d080..77b88bd 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Service.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Service.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/ServiceProvider.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/ServiceProvider.java
index 59728e9..4ea1bec 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/ServiceProvider.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/ServiceProvider.java
@@ -9,11 +9,13 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
import org.eclipse.emf.common.util.EList;
+
import org.eclipse.papyrus.iotml.software.artefact.VirtualEntity;
/**
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/StateVariable.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/StateVariable.java
index a859396..e37b3b7 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/StateVariable.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/StateVariable.java
@@ -9,10 +9,12 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
+
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>State Variable</b></em>'.
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Studio.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Studio.java
index a99d2c8..85aed25 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Studio.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/Studio.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/TypedElement.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/TypedElement.java
index c7c969a..b8ce40e 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/TypedElement.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/TypedElement.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AccessMethodImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AccessMethodImpl.java
index fedbb15..6bb9174 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AccessMethodImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AccessMethodImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ActionImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ActionImpl.java
index a2eb736..9c0ec9c 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ActionImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ActionImpl.java
@@ -9,11 +9,13 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
import org.eclipse.emf.ecore.EClass;
+
import org.eclipse.papyrus.iotml.sensinact.Action;
import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AttributeImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AttributeImpl.java
index 0c2ddbf..767ed41 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AttributeImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/AttributeImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
@@ -16,17 +17,20 @@
import java.util.Collection;
import org.eclipse.emf.common.notify.Notification;
+
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
-
import org.eclipse.emf.ecore.InternalEObject;
+
import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import org.eclipse.papyrus.iotml.sensinact.Attribute;
import org.eclipse.papyrus.iotml.sensinact.Metadata;
import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
+
import org.eclipse.uml2.uml.Property;
/**
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/GatewayImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/GatewayImpl.java
index bc2f029..ec21c34 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/GatewayImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/GatewayImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
@@ -20,6 +21,7 @@
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
import org.eclipse.papyrus.iotml.sensinact.Gateway;
import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
import org.eclipse.papyrus.iotml.sensinact.ServiceProvider;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/MetadataImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/MetadataImpl.java
index edc709b..0f5f9f4 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/MetadataImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/MetadataImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ParameterImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ParameterImpl.java
index 14e4f40..7bdc130 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ParameterImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ParameterImpl.java
@@ -9,15 +9,18 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
+
import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
import org.eclipse.papyrus.iotml.sensinact.Parameter;
import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/PropertyImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/PropertyImpl.java
index 5f194eb..19b1b89 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/PropertyImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/PropertyImpl.java
@@ -9,11 +9,13 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
import org.eclipse.emf.ecore.EClass;
+
import org.eclipse.papyrus.iotml.sensinact.Property;
import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ResourceImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ResourceImpl.java
index 95c0c56..9077a76 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ResourceImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ResourceImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactFactoryImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactFactoryImpl.java
index 1605a32..113853a 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactFactoryImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactFactoryImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactPackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactPackageImpl.java
index 9b7a852..0608ba8 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactPackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensinactPackageImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
@@ -111,7 +112,9 @@
import org.eclipse.papyrus.iotml.software.resource.impl.ResourcePackageImpl;
import org.eclipse.papyrus.iotml.wot.WoTPackage;
+
import org.eclipse.papyrus.iotml.wot.impl.WoTPackageImpl;
+
import org.eclipse.papyrus.sysml14.sysmlPackage;
import org.eclipse.uml2.types.TypesPackage;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensorDataImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensorDataImpl.java
index 0c53275..41e213b 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensorDataImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/SensorDataImpl.java
@@ -9,11 +9,13 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
import org.eclipse.emf.ecore.EClass;
+
import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
import org.eclipse.papyrus.iotml.sensinact.SensorData;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceImpl.java
index e5571e8..0f09361 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceProviderImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceProviderImpl.java
index 6329690..975b6b4 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceProviderImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/ServiceProviderImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
@@ -24,9 +25,11 @@
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
import org.eclipse.papyrus.iotml.sensinact.Service;
import org.eclipse.papyrus.iotml.sensinact.ServiceProvider;
+
import org.eclipse.papyrus.iotml.software.artefact.impl.VirtualEntityImpl;
/**
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StateVariableImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StateVariableImpl.java
index 493dd5a..f79a115 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StateVariableImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StateVariableImpl.java
@@ -9,14 +9,18 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
import org.eclipse.emf.common.notify.Notification;
+
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
+
import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
import org.eclipse.papyrus.iotml.sensinact.Action;
import org.eclipse.papyrus.iotml.sensinact.SensinactPackage;
import org.eclipse.papyrus.iotml.sensinact.StateVariable;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StudioImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StudioImpl.java
index cc922cd..8852529 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StudioImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/StudioImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/TypedElementImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/TypedElementImpl.java
index 7c1f11b..59a0c89 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/TypedElementImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/impl/TypedElementImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.impl;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactAdapterFactory.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactAdapterFactory.java
index 7d2d9e3..ba6a14d 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactAdapterFactory.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactAdapterFactory.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.util;
@@ -39,6 +40,7 @@
import org.eclipse.papyrus.iotml.software.artefact.DigitalArtefact;
import org.eclipse.papyrus.iotml.software.artefact.VirtualEntity;
+
import org.eclipse.papyrus.iotml.software.resource.OnDeviceResource;
/**
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactSwitch.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactSwitch.java
index 22ba0bb..4079c79 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactSwitch.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/sensinact/util/SensinactSwitch.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.sensinact.util;
@@ -37,6 +38,7 @@
import org.eclipse.papyrus.iotml.software.artefact.DigitalArtefact;
import org.eclipse.papyrus.iotml.software.artefact.VirtualEntity;
+
import org.eclipse.papyrus.iotml.software.resource.OnDeviceResource;
/**
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/ActionAffordance.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/ActionAffordance.java
index 3f275db..6a825e9 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/ActionAffordance.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/ActionAffordance.java
@@ -9,11 +9,12 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
-import org.eclipse.uml2.uml.BehavioralFeature;
+import org.eclipse.uml2.uml.Operation;
/**
* <!-- begin-user-doc -->
@@ -24,9 +25,9 @@
* The following features are supported:
* </p>
* <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#getBase_Operation <em>Base Operation</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#getInput <em>Input</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#getOutput <em>Output</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#getBase_BehavioralFeature <em>Base Behavioral Feature</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#isSafe <em>Safe</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#isIdempotent <em>Idempotent</em>}</li>
* </ul>
@@ -47,7 +48,7 @@
* @return the value of the '<em>Input</em>' reference.
* @see #setInput(DataSchema)
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getActionAffordance_Input()
- * @model ordered="false"
+ * @model transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
DataSchema getInput();
@@ -73,7 +74,7 @@
* @return the value of the '<em>Output</em>' reference.
* @see #setOutput(DataSchema)
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getActionAffordance_Output()
- * @model ordered="false"
+ * @model transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
DataSchema getOutput();
@@ -89,32 +90,6 @@
void setOutput(DataSchema value);
/**
- * Returns the value of the '<em><b>Base Behavioral Feature</b></em>' reference.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Base Behavioral Feature</em>' reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Base Behavioral Feature</em>' reference.
- * @see #setBase_BehavioralFeature(BehavioralFeature)
- * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getActionAffordance_Base_BehavioralFeature()
- * @model ordered="false"
- * @generated
- */
- BehavioralFeature getBase_BehavioralFeature();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#getBase_BehavioralFeature <em>Base Behavioral Feature</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Base Behavioral Feature</em>' reference.
- * @see #getBase_BehavioralFeature()
- * @generated
- */
- void setBase_BehavioralFeature(BehavioralFeature value);
-
- /**
* Returns the value of the '<em><b>Safe</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
@@ -166,4 +141,30 @@
*/
void setIdempotent(boolean value);
+ /**
+ * Returns the value of the '<em><b>Base Operation</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Operation</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Operation</em>' reference.
+ * @see #setBase_Operation(Operation)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getActionAffordance_Base_Operation()
+ * @model ordered="false"
+ * @generated
+ */
+ Operation getBase_Operation();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#getBase_Operation <em>Base Operation</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Operation</em>' reference.
+ * @see #getBase_Operation()
+ * @generated
+ */
+ void setBase_Operation(Operation value);
+
} // ActionAffordance
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/AuthorizationFlowKind.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/AuthorizationFlowKind.java
index 32ba58f..91a1344 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/AuthorizationFlowKind.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/AuthorizationFlowKind.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Context.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Context.java
index a3ba167..323209f 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Context.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Context.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/DataSchema.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/DataSchema.java
index 750f096..aff049e 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/DataSchema.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/DataSchema.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
@@ -17,10 +18,6 @@
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
-
-import org.eclipse.papyrus.iotml.software.core.structure.MetaValueSpecification;
-
-import org.eclipse.uml2.uml.Interval;
import org.eclipse.uml2.uml.Property;
import org.eclipse.uml2.uml.Type;
import org.eclipse.uml2.uml.TypedElement;
@@ -34,16 +31,22 @@
* The following features are supported:
* </p>
* <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getTitle <em>Title</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getBase_TypedElement <em>Base Typed Element</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getEnum <em>Enum</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getNumberInterval <em>Number Interval</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getRequired <em>Required</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getItems <em>Items</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getProperties <em>Properties</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getAType <em>AType</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#isWriteOnly <em>Write Only</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getFormat <em>Format</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getOneOf <em>One Of</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getConst <em>Const</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getMinItems <em>Min Items</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#getMaxItems <em>Max Items</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.DataSchema#isReadOnly <em>Read Only</em>}</li>
* </ul>
*
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema()
@@ -52,6 +55,58 @@
*/
public interface DataSchema extends EObject {
/**
+ * Returns the value of the '<em><b>Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Title</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Title</em>' attribute.
+ * @see #setTitle(String)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_Title()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getTitle();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getTitle <em>Title</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Title</em>' attribute.
+ * @see #getTitle()
+ * @generated
+ */
+ void setTitle(String value);
+
+ /**
+ * Returns the value of the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Description</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Description</em>' attribute.
+ * @see #setDescription(String)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_Description()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getDescription();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getDescription <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Description</em>' attribute.
+ * @see #getDescription()
+ * @generated
+ */
+ void setDescription(String value);
+
+ /**
* Returns the value of the '<em><b>Base Typed Element</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
@@ -78,46 +133,20 @@
void setBase_TypedElement(TypedElement value);
/**
- * Returns the value of the '<em><b>Enum</b></em>' reference list.
- * The list contents are of type {@link org.eclipse.papyrus.iotml.software.core.structure.MetaValueSpecification}.
+ * Returns the value of the '<em><b>Enum</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Enum</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>Enum</em>' reference list.
+ * @return the value of the '<em>Enum</em>' attribute list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_Enum()
- * @model ordered="false"
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
- EList<MetaValueSpecification> getEnum();
-
- /**
- * Returns the value of the '<em><b>Number Interval</b></em>' reference.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Number Interval</em>' reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Number Interval</em>' reference.
- * @see #setNumberInterval(Interval)
- * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_NumberInterval()
- * @model required="true" ordered="false"
- * @generated
- */
- Interval getNumberInterval();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getNumberInterval <em>Number Interval</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Number Interval</em>' reference.
- * @see #getNumberInterval()
- * @generated
- */
- void setNumberInterval(Interval value);
+ EList<String> getEnum();
/**
* Returns the value of the '<em><b>Required</b></em>' reference list.
@@ -194,20 +223,20 @@
EList<DataSchema> getProperties();
/**
- * Returns the value of the '<em><b>Type</b></em>' reference list.
+ * Returns the value of the '<em><b>AType</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.Type}.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Type</em>' reference list isn't clear,
+ * If the meaning of the '<em>AType</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>Type</em>' reference list.
- * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_Type()
+ * @return the value of the '<em>AType</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_AType()
* @model ordered="false"
* @generated
*/
- EList<org.eclipse.papyrus.iotml.wot.Type> getType();
+ EList<org.eclipse.papyrus.iotml.wot.Type> getAType();
/**
* Returns the value of the '<em><b>Write Only</b></em>' attribute.
@@ -278,4 +307,134 @@
*/
EList<DataSchema> getOneOf();
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' attribute.
+ * @see #setType(String)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_Type()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getType <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' attribute.
+ * @see #getType()
+ * @generated
+ */
+ void setType(String value);
+
+ /**
+ * Returns the value of the '<em><b>Const</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Const</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Const</em>' attribute.
+ * @see #setConst(String)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_Const()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getConst();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getConst <em>Const</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Const</em>' attribute.
+ * @see #getConst()
+ * @generated
+ */
+ void setConst(String value);
+
+ /**
+ * Returns the value of the '<em><b>Min Items</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Min Items</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Min Items</em>' attribute.
+ * @see #setMinItems(int)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_MinItems()
+ * @model dataType="org.eclipse.uml2.types.Integer" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ int getMinItems();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getMinItems <em>Min Items</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Min Items</em>' attribute.
+ * @see #getMinItems()
+ * @generated
+ */
+ void setMinItems(int value);
+
+ /**
+ * Returns the value of the '<em><b>Max Items</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Max Items</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Max Items</em>' attribute.
+ * @see #setMaxItems(int)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_MaxItems()
+ * @model dataType="org.eclipse.uml2.types.Integer" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ int getMaxItems();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getMaxItems <em>Max Items</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Max Items</em>' attribute.
+ * @see #getMaxItems()
+ * @generated
+ */
+ void setMaxItems(int value);
+
+ /**
+ * Returns the value of the '<em><b>Read Only</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Read Only</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Read Only</em>' attribute.
+ * @see #setReadOnly(boolean)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getDataSchema_ReadOnly()
+ * @model dataType="org.eclipse.uml2.types.Boolean" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ boolean isReadOnly();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.DataSchema#isReadOnly <em>Read Only</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Read Only</em>' attribute.
+ * @see #isReadOnly()
+ * @generated
+ */
+ void setReadOnly(boolean value);
+
} // DataSchema
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/EventAffordance.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/EventAffordance.java
index 806d3ba..6949ddf 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/EventAffordance.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/EventAffordance.java
@@ -9,11 +9,12 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
-import org.eclipse.uml2.uml.Signal;
+import org.eclipse.uml2.uml.Reception;
/**
* <!-- begin-user-doc -->
@@ -24,7 +25,7 @@
* The following features are supported:
* </p>
* <ul>
- * <li>{@link org.eclipse.papyrus.iotml.wot.EventAffordance#getBase_Signal <em>Base Signal</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.EventAffordance#getBase_Reception <em>Base Reception</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.EventAffordance#getData <em>Data</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.EventAffordance#getSubscription <em>Subscription</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.EventAffordance#getCancellation <em>Cancellation</em>}</li>
@@ -36,32 +37,6 @@
*/
public interface EventAffordance extends InteractionAffordance {
/**
- * Returns the value of the '<em><b>Base Signal</b></em>' reference.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Base Signal</em>' reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Base Signal</em>' reference.
- * @see #setBase_Signal(Signal)
- * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getEventAffordance_Base_Signal()
- * @model ordered="false"
- * @generated
- */
- Signal getBase_Signal();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.EventAffordance#getBase_Signal <em>Base Signal</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Base Signal</em>' reference.
- * @see #getBase_Signal()
- * @generated
- */
- void setBase_Signal(Signal value);
-
- /**
* Returns the value of the '<em><b>Data</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
@@ -139,4 +114,30 @@
*/
void setCancellation(DataSchema value);
+ /**
+ * Returns the value of the '<em><b>Base Reception</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Reception</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Reception</em>' reference.
+ * @see #setBase_Reception(Reception)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getEventAffordance_Base_Reception()
+ * @model ordered="false"
+ * @generated
+ */
+ Reception getBase_Reception();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.EventAffordance#getBase_Reception <em>Base Reception</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Reception</em>' reference.
+ * @see #getBase_Reception()
+ * @generated
+ */
+ void setBase_Reception(Reception value);
+
} // EventAffordance
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Form.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Form.java
index cd66e66..0e3be91 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Form.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Form.java
@@ -9,13 +9,15 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
import org.eclipse.emf.common.util.EList;
-import org.eclipse.papyrus.iotml.software.core.structure.MetaValueSpecification;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.uml2.uml.Comment;
/**
* <!-- begin-user-doc -->
@@ -33,13 +35,15 @@
* <li>{@link org.eclipse.papyrus.iotml.wot.Form#getSubProtocol <em>Sub Protocol</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Form#getScopes <em>Scopes</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Form#getResponse <em>Response</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.Form#getSecurity <em>Security</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.Form#getBase_Comment <em>Base Comment</em>}</li>
* </ul>
*
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getForm()
* @model
* @generated
*/
-public interface Form extends MetaValueSpecification {
+public interface Form extends EObject {
/**
* Returns the value of the '<em><b>Op</b></em>' attribute list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.OpKind}.
@@ -177,7 +181,7 @@
* <!-- end-user-doc -->
* @return the value of the '<em>Scopes</em>' attribute list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getForm_Scopes()
- * @model dataType="org.eclipse.uml2.types.String" transient="true" volatile="true" derived="true" ordered="false"
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
EList<String> getScopes();
@@ -209,4 +213,46 @@
*/
void setResponse(String value);
+ /**
+ * Returns the value of the '<em><b>Security</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.iotml.wot.SecurityScheme}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Security</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>Security</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getForm_Security()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<SecurityScheme> getSecurity();
+
+ /**
+ * Returns the value of the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Comment</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Comment</em>' reference.
+ * @see #setBase_Comment(Comment)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getForm_Base_Comment()
+ * @model ordered="false"
+ * @generated
+ */
+ Comment getBase_Comment();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Form#getBase_Comment <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Comment</em>' reference.
+ * @see #getBase_Comment()
+ * @generated
+ */
+ void setBase_Comment(Comment value);
+
} // Form
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/InteractionAffordance.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/InteractionAffordance.java
index 562c0a6..b91db54 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/InteractionAffordance.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/InteractionAffordance.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
@@ -26,8 +27,10 @@
* The following features are supported:
* </p>
* <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getTitle <em>Title</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getForms <em>Forms</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getAType <em>AType</em>}</li>
* </ul>
*
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getInteractionAffordance()
@@ -36,6 +39,58 @@
*/
public interface InteractionAffordance extends EObject {
/**
+ * Returns the value of the '<em><b>Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Title</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Title</em>' attribute.
+ * @see #setTitle(String)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getInteractionAffordance_Title()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getTitle();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getTitle <em>Title</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Title</em>' attribute.
+ * @see #getTitle()
+ * @generated
+ */
+ void setTitle(String value);
+
+ /**
+ * Returns the value of the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Description</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Description</em>' attribute.
+ * @see #setDescription(String)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getInteractionAffordance_Description()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getDescription();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getDescription <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Description</em>' attribute.
+ * @see #getDescription()
+ * @generated
+ */
+ void setDescription(String value);
+
+ /**
* Returns the value of the '<em><b>Forms</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.Form}.
* <!-- begin-user-doc -->
@@ -52,19 +107,19 @@
EList<Form> getForms();
/**
- * Returns the value of the '<em><b>Type</b></em>' reference list.
+ * Returns the value of the '<em><b>AType</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.Type}.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Type</em>' reference list isn't clear,
+ * If the meaning of the '<em>AType</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>Type</em>' reference list.
- * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getInteractionAffordance_Type()
+ * @return the value of the '<em>AType</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getInteractionAffordance_AType()
* @model ordered="false"
* @generated
*/
- EList<Type> getType();
+ EList<Type> getAType();
} // InteractionAffordance
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Link.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Link.java
index 644640a..c21f715 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Link.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Link.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/OpKind.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/OpKind.java
index a1392dd..73051ae 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/OpKind.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/OpKind.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/PropertyAffordance.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/PropertyAffordance.java
index 3a92277..778b290 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/PropertyAffordance.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/PropertyAffordance.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/QoPKind.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/QoPKind.java
index 2122973..372c9d1 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/QoPKind.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/QoPKind.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAlgorithmKind.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAlgorithmKind.java
index fc0f72c..065d93b 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAlgorithmKind.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAlgorithmKind.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAuthenticationFormatKind.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAuthenticationFormatKind.java
index 529cef2..0979171 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAuthenticationFormatKind.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAuthenticationFormatKind.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAuthenticationInformationLocationKind.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAuthenticationInformationLocationKind.java
index e4d4147..291041d 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAuthenticationInformationLocationKind.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityAuthenticationInformationLocationKind.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityScheme.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityScheme.java
index 2b7f395..3c8eac6 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityScheme.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecurityScheme.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
@@ -29,6 +30,8 @@
* </p>
* <ul>
* <li>{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getBase_Classifier <em>Base Classifier</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getTitle <em>Title</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getScheme <em>Scheme</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getProxy <em>Proxy</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getIn <em>In</em>}</li>
@@ -76,6 +79,58 @@
void setBase_Classifier(Classifier value);
/**
+ * Returns the value of the '<em><b>Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Title</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Title</em>' attribute.
+ * @see #setTitle(String)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getSecurityScheme_Title()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getTitle();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getTitle <em>Title</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Title</em>' attribute.
+ * @see #getTitle()
+ * @generated
+ */
+ void setTitle(String value);
+
+ /**
+ * Returns the value of the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Description</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Description</em>' attribute.
+ * @see #setDescription(String)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getSecurityScheme_Description()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getDescription();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getDescription <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Description</em>' attribute.
+ * @see #getDescription()
+ * @generated
+ */
+ void setDescription(String value);
+
+ /**
* Returns the value of the '<em><b>Scheme</b></em>' attribute.
* The literals are from the enumeration {@link org.eclipse.papyrus.iotml.wot.SecuritySchemeKind}.
* <!-- begin-user-doc -->
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecuritySchemeKind.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecuritySchemeKind.java
index c07d83a..89d018a 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecuritySchemeKind.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SecuritySchemeKind.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SubProtocolKind.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SubProtocolKind.java
index 87227ab..383feb9 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SubProtocolKind.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/SubProtocolKind.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Thing.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Thing.java
index 74a0401..56c44bc 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Thing.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Thing.java
@@ -9,13 +9,14 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
import org.eclipse.emf.common.util.EList;
-import org.eclipse.papyrus.iotml.software.artefact.VirtualEntity;
+import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
@@ -26,25 +27,81 @@
* The following features are supported:
* </p>
* <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getTitle <em>Title</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getBase <em>Base</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getId <em>Id</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getSupport <em>Support</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getSecurity <em>Security</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getSecurityDefinitions <em>Security Definitions</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getLinks <em>Links</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getEvents <em>Events</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getActions <em>Actions</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getProperties <em>Properties</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getVersion <em>Version</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getType <em>Type</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getContext <em>Context</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getAType <em>AType</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getAContext <em>AContext</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getForms <em>Forms</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getBase_Class <em>Base Class</em>}</li>
* </ul>
*
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing()
* @model
* @generated
*/
-public interface Thing extends VirtualEntity {
+public interface Thing extends EObject {
+ /**
+ * Returns the value of the '<em><b>Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Title</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Title</em>' attribute.
+ * @see #setTitle(String)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Title()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getTitle();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Thing#getTitle <em>Title</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Title</em>' attribute.
+ * @see #getTitle()
+ * @generated
+ */
+ void setTitle(String value);
+
+ /**
+ * Returns the value of the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Description</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Description</em>' attribute.
+ * @see #setDescription(String)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Description()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getDescription();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Thing#getDescription <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Description</em>' attribute.
+ * @see #getDescription()
+ * @generated
+ */
+ void setDescription(String value);
+
/**
* Returns the value of the '<em><b>Base</b></em>' attribute.
* <!-- begin-user-doc -->
@@ -124,6 +181,22 @@
void setSupport(String value);
/**
+ * Returns the value of the '<em><b>Security</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.iotml.wot.SecurityScheme}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Security</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>Security</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Security()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<SecurityScheme> getSecurity();
+
+ /**
* Returns the value of the '<em><b>Security Definitions</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.SecurityScheme}.
* <!-- begin-user-doc -->
@@ -166,7 +239,7 @@
* <!-- end-user-doc -->
* @return the value of the '<em>Events</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Events()
- * @model ordered="false"
+ * @model transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
EList<EventAffordance> getEvents();
@@ -182,7 +255,7 @@
* <!-- end-user-doc -->
* @return the value of the '<em>Actions</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Actions()
- * @model ordered="false"
+ * @model transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
EList<ActionAffordance> getActions();
@@ -198,7 +271,7 @@
* <!-- end-user-doc -->
* @return the value of the '<em>Properties</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Properties()
- * @model ordered="false"
+ * @model transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
EList<PropertyAffordance> getProperties();
@@ -230,36 +303,36 @@
void setVersion(String value);
/**
- * Returns the value of the '<em><b>Type</b></em>' reference list.
+ * Returns the value of the '<em><b>AType</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.Type}.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Type</em>' reference list isn't clear,
+ * If the meaning of the '<em>AType</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>Type</em>' reference list.
- * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Type()
+ * @return the value of the '<em>AType</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_AType()
* @model ordered="false"
* @generated
*/
- EList<Type> getType();
+ EList<Type> getAType();
/**
- * Returns the value of the '<em><b>Context</b></em>' reference list.
+ * Returns the value of the '<em><b>AContext</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.Context}.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Context</em>' reference list isn't clear,
+ * If the meaning of the '<em>AContext</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>Context</em>' reference list.
- * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Context()
+ * @return the value of the '<em>AContext</em>' reference list.
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_AContext()
* @model ordered="false"
* @generated
*/
- EList<Context> getContext();
+ EList<Context> getAContext();
/**
* Returns the value of the '<em><b>Forms</b></em>' reference list.
@@ -277,4 +350,30 @@
*/
EList<Form> getForms();
+ /**
+ * Returns the value of the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Class</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Class</em>' reference.
+ * @see #setBase_Class(org.eclipse.uml2.uml.Class)
+ * @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Base_Class()
+ * @model ordered="false"
+ * @generated
+ */
+ org.eclipse.uml2.uml.Class getBase_Class();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Thing#getBase_Class <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Class</em>' reference.
+ * @see #getBase_Class()
+ * @generated
+ */
+ void setBase_Class(org.eclipse.uml2.uml.Class value);
+
} // Thing
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Type.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Type.java
index 823cb21..a3bb789 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Type.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/Type.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/WoTFactory.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/WoTFactory.java
index 102b791..43aa1a5 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/WoTFactory.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/WoTFactory.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/WoTPackage.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/WoTPackage.java
index dfe2a8b..2a53a36 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/WoTPackage.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/WoTPackage.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
@@ -19,10 +20,6 @@
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
-import org.eclipse.papyrus.iotml.software.artefact.ArtefactPackage;
-
-import org.eclipse.papyrus.iotml.software.core.structure.StructurePackage;
-
/**
* <!-- begin-user-doc -->
* The <b>Package</b> for the model.
@@ -83,31 +80,22 @@
int THING = 0;
/**
- * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * The feature id for the '<em><b>Title</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int THING__BASE_CLASS = ArtefactPackage.VIRTUAL_ENTITY__BASE_CLASS;
+ int THING__TITLE = 0;
/**
- * The feature id for the '<em><b>Phisical Entity Specification</b></em>' reference.
+ * The feature id for the '<em><b>Description</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int THING__PHISICAL_ENTITY_SPECIFICATION = ArtefactPackage.VIRTUAL_ENTITY__PHISICAL_ENTITY_SPECIFICATION;
-
- /**
- * The feature id for the '<em><b>Physical Entity</b></em>' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int THING__PHYSICAL_ENTITY = ArtefactPackage.VIRTUAL_ENTITY__PHYSICAL_ENTITY;
+ int THING__DESCRIPTION = 1;
/**
* The feature id for the '<em><b>Base</b></em>' attribute.
@@ -116,7 +104,7 @@
* @generated
* @ordered
*/
- int THING__BASE = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 0;
+ int THING__BASE = 2;
/**
* The feature id for the '<em><b>Id</b></em>' attribute.
@@ -125,7 +113,7 @@
* @generated
* @ordered
*/
- int THING__ID = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 1;
+ int THING__ID = 3;
/**
* The feature id for the '<em><b>Support</b></em>' attribute.
@@ -134,7 +122,16 @@
* @generated
* @ordered
*/
- int THING__SUPPORT = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 2;
+ int THING__SUPPORT = 4;
+
+ /**
+ * The feature id for the '<em><b>Security</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THING__SECURITY = 5;
/**
* The feature id for the '<em><b>Security Definitions</b></em>' reference list.
@@ -143,7 +140,7 @@
* @generated
* @ordered
*/
- int THING__SECURITY_DEFINITIONS = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 3;
+ int THING__SECURITY_DEFINITIONS = 6;
/**
* The feature id for the '<em><b>Links</b></em>' reference list.
@@ -152,7 +149,7 @@
* @generated
* @ordered
*/
- int THING__LINKS = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 4;
+ int THING__LINKS = 7;
/**
* The feature id for the '<em><b>Events</b></em>' reference list.
@@ -161,7 +158,7 @@
* @generated
* @ordered
*/
- int THING__EVENTS = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 5;
+ int THING__EVENTS = 8;
/**
* The feature id for the '<em><b>Actions</b></em>' reference list.
@@ -170,7 +167,7 @@
* @generated
* @ordered
*/
- int THING__ACTIONS = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 6;
+ int THING__ACTIONS = 9;
/**
* The feature id for the '<em><b>Properties</b></em>' reference list.
@@ -179,7 +176,7 @@
* @generated
* @ordered
*/
- int THING__PROPERTIES = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 7;
+ int THING__PROPERTIES = 10;
/**
* The feature id for the '<em><b>Version</b></em>' attribute.
@@ -188,25 +185,25 @@
* @generated
* @ordered
*/
- int THING__VERSION = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 8;
+ int THING__VERSION = 11;
/**
- * The feature id for the '<em><b>Type</b></em>' reference list.
+ * The feature id for the '<em><b>AType</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int THING__TYPE = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 9;
+ int THING__ATYPE = 12;
/**
- * The feature id for the '<em><b>Context</b></em>' reference list.
+ * The feature id for the '<em><b>AContext</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int THING__CONTEXT = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 10;
+ int THING__ACONTEXT = 13;
/**
* The feature id for the '<em><b>Forms</b></em>' reference list.
@@ -215,7 +212,16 @@
* @generated
* @ordered
*/
- int THING__FORMS = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 11;
+ int THING__FORMS = 14;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int THING__BASE_CLASS = 15;
/**
* The number of structural features of the '<em>Thing</em>' class.
@@ -224,7 +230,7 @@
* @generated
* @ordered
*/
- int THING_FEATURE_COUNT = ArtefactPackage.VIRTUAL_ENTITY_FEATURE_COUNT + 12;
+ int THING_FEATURE_COUNT = 16;
/**
* The meta object id for the '{@link org.eclipse.papyrus.iotml.wot.impl.SecuritySchemeImpl <em>Security Scheme</em>}' class.
@@ -246,13 +252,31 @@
int SECURITY_SCHEME__BASE_CLASSIFIER = 0;
/**
+ * The feature id for the '<em><b>Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_SCHEME__TITLE = 1;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECURITY_SCHEME__DESCRIPTION = 2;
+
+ /**
* The feature id for the '<em><b>Scheme</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int SECURITY_SCHEME__SCHEME = 1;
+ int SECURITY_SCHEME__SCHEME = 3;
/**
* The feature id for the '<em><b>Proxy</b></em>' attribute.
@@ -261,7 +285,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__PROXY = 2;
+ int SECURITY_SCHEME__PROXY = 4;
/**
* The feature id for the '<em><b>In</b></em>' attribute.
@@ -270,7 +294,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__IN = 3;
+ int SECURITY_SCHEME__IN = 5;
/**
* The feature id for the '<em><b>Qop</b></em>' attribute.
@@ -279,7 +303,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__QOP = 4;
+ int SECURITY_SCHEME__QOP = 6;
/**
* The feature id for the '<em><b>Name</b></em>' attribute.
@@ -288,7 +312,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__NAME = 5;
+ int SECURITY_SCHEME__NAME = 7;
/**
* The feature id for the '<em><b>Authorization</b></em>' attribute.
@@ -297,7 +321,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__AUTHORIZATION = 6;
+ int SECURITY_SCHEME__AUTHORIZATION = 8;
/**
* The feature id for the '<em><b>Alg</b></em>' attribute.
@@ -306,7 +330,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__ALG = 7;
+ int SECURITY_SCHEME__ALG = 9;
/**
* The feature id for the '<em><b>Format</b></em>' attribute.
@@ -315,7 +339,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__FORMAT = 8;
+ int SECURITY_SCHEME__FORMAT = 10;
/**
* The feature id for the '<em><b>Identity</b></em>' attribute.
@@ -324,7 +348,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__IDENTITY = 9;
+ int SECURITY_SCHEME__IDENTITY = 11;
/**
* The feature id for the '<em><b>Token</b></em>' attribute.
@@ -333,7 +357,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__TOKEN = 10;
+ int SECURITY_SCHEME__TOKEN = 12;
/**
* The feature id for the '<em><b>Refresh</b></em>' attribute.
@@ -342,7 +366,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__REFRESH = 11;
+ int SECURITY_SCHEME__REFRESH = 13;
/**
* The feature id for the '<em><b>Scopes</b></em>' attribute list.
@@ -351,7 +375,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__SCOPES = 12;
+ int SECURITY_SCHEME__SCOPES = 14;
/**
* The feature id for the '<em><b>Flow</b></em>' attribute.
@@ -360,7 +384,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME__FLOW = 13;
+ int SECURITY_SCHEME__FLOW = 15;
/**
* The number of structural features of the '<em>Security Scheme</em>' class.
@@ -369,7 +393,7 @@
* @generated
* @ordered
*/
- int SECURITY_SCHEME_FEATURE_COUNT = 14;
+ int SECURITY_SCHEME_FEATURE_COUNT = 16;
/**
* The meta object id for the '{@link org.eclipse.papyrus.iotml.wot.impl.LinkImpl <em>Link</em>}' class.
@@ -446,22 +470,40 @@
int INTERACTION_AFFORDANCE = 4;
/**
+ * The feature id for the '<em><b>Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTERACTION_AFFORDANCE__TITLE = 0;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTERACTION_AFFORDANCE__DESCRIPTION = 1;
+
+ /**
* The feature id for the '<em><b>Forms</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int INTERACTION_AFFORDANCE__FORMS = 0;
+ int INTERACTION_AFFORDANCE__FORMS = 2;
/**
- * The feature id for the '<em><b>Type</b></em>' reference list.
+ * The feature id for the '<em><b>AType</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int INTERACTION_AFFORDANCE__TYPE = 1;
+ int INTERACTION_AFFORDANCE__ATYPE = 3;
/**
* The number of structural features of the '<em>Interaction Affordance</em>' class.
@@ -470,7 +512,7 @@
* @generated
* @ordered
*/
- int INTERACTION_AFFORDANCE_FEATURE_COUNT = 2;
+ int INTERACTION_AFFORDANCE_FEATURE_COUNT = 4;
/**
* The meta object id for the '{@link org.eclipse.papyrus.iotml.wot.impl.EventAffordanceImpl <em>Event Affordance</em>}' class.
@@ -483,6 +525,24 @@
int EVENT_AFFORDANCE = 3;
/**
+ * The feature id for the '<em><b>Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EVENT_AFFORDANCE__TITLE = INTERACTION_AFFORDANCE__TITLE;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EVENT_AFFORDANCE__DESCRIPTION = INTERACTION_AFFORDANCE__DESCRIPTION;
+
+ /**
* The feature id for the '<em><b>Forms</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -492,22 +552,22 @@
int EVENT_AFFORDANCE__FORMS = INTERACTION_AFFORDANCE__FORMS;
/**
- * The feature id for the '<em><b>Type</b></em>' reference list.
+ * The feature id for the '<em><b>AType</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int EVENT_AFFORDANCE__TYPE = INTERACTION_AFFORDANCE__TYPE;
+ int EVENT_AFFORDANCE__ATYPE = INTERACTION_AFFORDANCE__ATYPE;
/**
- * The feature id for the '<em><b>Base Signal</b></em>' reference.
+ * The feature id for the '<em><b>Base Reception</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int EVENT_AFFORDANCE__BASE_SIGNAL = INTERACTION_AFFORDANCE_FEATURE_COUNT + 0;
+ int EVENT_AFFORDANCE__BASE_RECEPTION = INTERACTION_AFFORDANCE_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Data</b></em>' reference.
@@ -556,40 +616,13 @@
int FORM = 5;
/**
- * The feature id for the '<em><b>Base Value Specification</b></em>' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int FORM__BASE_VALUE_SPECIFICATION = StructurePackage.META_VALUE_SPECIFICATION__BASE_VALUE_SPECIFICATION;
-
- /**
- * The feature id for the '<em><b>Type</b></em>' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int FORM__TYPE = StructurePackage.META_VALUE_SPECIFICATION__TYPE;
-
- /**
- * The feature id for the '<em><b>Description</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int FORM__DESCRIPTION = StructurePackage.META_VALUE_SPECIFICATION__DESCRIPTION;
-
- /**
* The feature id for the '<em><b>Op</b></em>' attribute list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int FORM__OP = StructurePackage.META_VALUE_SPECIFICATION_FEATURE_COUNT + 0;
+ int FORM__OP = 0;
/**
* The feature id for the '<em><b>Href</b></em>' attribute.
@@ -598,7 +631,7 @@
* @generated
* @ordered
*/
- int FORM__HREF = StructurePackage.META_VALUE_SPECIFICATION_FEATURE_COUNT + 1;
+ int FORM__HREF = 1;
/**
* The feature id for the '<em><b>Content Type</b></em>' attribute.
@@ -607,7 +640,7 @@
* @generated
* @ordered
*/
- int FORM__CONTENT_TYPE = StructurePackage.META_VALUE_SPECIFICATION_FEATURE_COUNT + 2;
+ int FORM__CONTENT_TYPE = 2;
/**
* The feature id for the '<em><b>Content Coding</b></em>' attribute.
@@ -616,7 +649,7 @@
* @generated
* @ordered
*/
- int FORM__CONTENT_CODING = StructurePackage.META_VALUE_SPECIFICATION_FEATURE_COUNT + 3;
+ int FORM__CONTENT_CODING = 3;
/**
* The feature id for the '<em><b>Sub Protocol</b></em>' attribute.
@@ -625,7 +658,7 @@
* @generated
* @ordered
*/
- int FORM__SUB_PROTOCOL = StructurePackage.META_VALUE_SPECIFICATION_FEATURE_COUNT + 4;
+ int FORM__SUB_PROTOCOL = 4;
/**
* The feature id for the '<em><b>Scopes</b></em>' attribute list.
@@ -634,7 +667,7 @@
* @generated
* @ordered
*/
- int FORM__SCOPES = StructurePackage.META_VALUE_SPECIFICATION_FEATURE_COUNT + 5;
+ int FORM__SCOPES = 5;
/**
* The feature id for the '<em><b>Response</b></em>' attribute.
@@ -643,7 +676,25 @@
* @generated
* @ordered
*/
- int FORM__RESPONSE = StructurePackage.META_VALUE_SPECIFICATION_FEATURE_COUNT + 6;
+ int FORM__RESPONSE = 6;
+
+ /**
+ * The feature id for the '<em><b>Security</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FORM__SECURITY = 7;
+
+ /**
+ * The feature id for the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FORM__BASE_COMMENT = 8;
/**
* The number of structural features of the '<em>Form</em>' class.
@@ -652,7 +703,7 @@
* @generated
* @ordered
*/
- int FORM_FEATURE_COUNT = StructurePackage.META_VALUE_SPECIFICATION_FEATURE_COUNT + 7;
+ int FORM_FEATURE_COUNT = 9;
/**
* The meta object id for the '{@link org.eclipse.papyrus.iotml.wot.impl.TypeImpl <em>Type</em>}' class.
@@ -702,31 +753,40 @@
int DATA_SCHEMA = 7;
/**
+ * The feature id for the '<em><b>Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_SCHEMA__TITLE = 0;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_SCHEMA__DESCRIPTION = 1;
+
+ /**
* The feature id for the '<em><b>Base Typed Element</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int DATA_SCHEMA__BASE_TYPED_ELEMENT = 0;
+ int DATA_SCHEMA__BASE_TYPED_ELEMENT = 2;
/**
- * The feature id for the '<em><b>Enum</b></em>' reference list.
+ * The feature id for the '<em><b>Enum</b></em>' attribute list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int DATA_SCHEMA__ENUM = 1;
-
- /**
- * The feature id for the '<em><b>Number Interval</b></em>' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DATA_SCHEMA__NUMBER_INTERVAL = 2;
+ int DATA_SCHEMA__ENUM = 3;
/**
* The feature id for the '<em><b>Required</b></em>' reference list.
@@ -735,7 +795,7 @@
* @generated
* @ordered
*/
- int DATA_SCHEMA__REQUIRED = 3;
+ int DATA_SCHEMA__REQUIRED = 4;
/**
* The feature id for the '<em><b>Items</b></em>' reference list.
@@ -744,7 +804,7 @@
* @generated
* @ordered
*/
- int DATA_SCHEMA__ITEMS = 4;
+ int DATA_SCHEMA__ITEMS = 5;
/**
* The feature id for the '<em><b>Properties</b></em>' reference list.
@@ -753,16 +813,16 @@
* @generated
* @ordered
*/
- int DATA_SCHEMA__PROPERTIES = 5;
+ int DATA_SCHEMA__PROPERTIES = 6;
/**
- * The feature id for the '<em><b>Type</b></em>' reference list.
+ * The feature id for the '<em><b>AType</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int DATA_SCHEMA__TYPE = 6;
+ int DATA_SCHEMA__ATYPE = 7;
/**
* The feature id for the '<em><b>Write Only</b></em>' attribute.
@@ -771,7 +831,7 @@
* @generated
* @ordered
*/
- int DATA_SCHEMA__WRITE_ONLY = 7;
+ int DATA_SCHEMA__WRITE_ONLY = 8;
/**
* The feature id for the '<em><b>Format</b></em>' attribute.
@@ -780,7 +840,7 @@
* @generated
* @ordered
*/
- int DATA_SCHEMA__FORMAT = 8;
+ int DATA_SCHEMA__FORMAT = 9;
/**
* The feature id for the '<em><b>One Of</b></em>' reference list.
@@ -789,7 +849,52 @@
* @generated
* @ordered
*/
- int DATA_SCHEMA__ONE_OF = 9;
+ int DATA_SCHEMA__ONE_OF = 10;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_SCHEMA__TYPE = 11;
+
+ /**
+ * The feature id for the '<em><b>Const</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_SCHEMA__CONST = 12;
+
+ /**
+ * The feature id for the '<em><b>Min Items</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_SCHEMA__MIN_ITEMS = 13;
+
+ /**
+ * The feature id for the '<em><b>Max Items</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_SCHEMA__MAX_ITEMS = 14;
+
+ /**
+ * The feature id for the '<em><b>Read Only</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_SCHEMA__READ_ONLY = 15;
/**
* The number of structural features of the '<em>Data Schema</em>' class.
@@ -798,7 +903,7 @@
* @generated
* @ordered
*/
- int DATA_SCHEMA_FEATURE_COUNT = 10;
+ int DATA_SCHEMA_FEATURE_COUNT = 16;
/**
* The meta object id for the '{@link org.eclipse.papyrus.iotml.wot.impl.ActionAffordanceImpl <em>Action Affordance</em>}' class.
@@ -811,6 +916,24 @@
int ACTION_AFFORDANCE = 8;
/**
+ * The feature id for the '<em><b>Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION_AFFORDANCE__TITLE = INTERACTION_AFFORDANCE__TITLE;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION_AFFORDANCE__DESCRIPTION = INTERACTION_AFFORDANCE__DESCRIPTION;
+
+ /**
* The feature id for the '<em><b>Forms</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -820,13 +943,22 @@
int ACTION_AFFORDANCE__FORMS = INTERACTION_AFFORDANCE__FORMS;
/**
- * The feature id for the '<em><b>Type</b></em>' reference list.
+ * The feature id for the '<em><b>AType</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int ACTION_AFFORDANCE__TYPE = INTERACTION_AFFORDANCE__TYPE;
+ int ACTION_AFFORDANCE__ATYPE = INTERACTION_AFFORDANCE__ATYPE;
+
+ /**
+ * The feature id for the '<em><b>Base Operation</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACTION_AFFORDANCE__BASE_OPERATION = INTERACTION_AFFORDANCE_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Input</b></em>' reference.
@@ -835,7 +967,7 @@
* @generated
* @ordered
*/
- int ACTION_AFFORDANCE__INPUT = INTERACTION_AFFORDANCE_FEATURE_COUNT + 0;
+ int ACTION_AFFORDANCE__INPUT = INTERACTION_AFFORDANCE_FEATURE_COUNT + 1;
/**
* The feature id for the '<em><b>Output</b></em>' reference.
@@ -844,16 +976,7 @@
* @generated
* @ordered
*/
- int ACTION_AFFORDANCE__OUTPUT = INTERACTION_AFFORDANCE_FEATURE_COUNT + 1;
-
- /**
- * The feature id for the '<em><b>Base Behavioral Feature</b></em>' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int ACTION_AFFORDANCE__BASE_BEHAVIORAL_FEATURE = INTERACTION_AFFORDANCE_FEATURE_COUNT + 2;
+ int ACTION_AFFORDANCE__OUTPUT = INTERACTION_AFFORDANCE_FEATURE_COUNT + 2;
/**
* The feature id for the '<em><b>Safe</b></em>' attribute.
@@ -893,6 +1016,24 @@
int PROPERTY_AFFORDANCE = 9;
/**
+ * The feature id for the '<em><b>Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_AFFORDANCE__TITLE = INTERACTION_AFFORDANCE__TITLE;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_AFFORDANCE__DESCRIPTION = INTERACTION_AFFORDANCE__DESCRIPTION;
+
+ /**
* The feature id for the '<em><b>Forms</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -902,13 +1043,13 @@
int PROPERTY_AFFORDANCE__FORMS = INTERACTION_AFFORDANCE__FORMS;
/**
- * The feature id for the '<em><b>Type</b></em>' reference list.
+ * The feature id for the '<em><b>AType</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int PROPERTY_AFFORDANCE__TYPE = INTERACTION_AFFORDANCE__TYPE;
+ int PROPERTY_AFFORDANCE__ATYPE = INTERACTION_AFFORDANCE__ATYPE;
/**
* The feature id for the '<em><b>Observable</b></em>' attribute.
@@ -1057,6 +1198,28 @@
EClass getThing();
/**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.Thing#getTitle <em>Title</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Title</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.Thing#getTitle()
+ * @see #getThing()
+ * @generated
+ */
+ EAttribute getThing_Title();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.Thing#getDescription <em>Description</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Description</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.Thing#getDescription()
+ * @see #getThing()
+ * @generated
+ */
+ EAttribute getThing_Description();
+
+ /**
* Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.Thing#getBase <em>Base</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1090,6 +1253,17 @@
EAttribute getThing_Support();
/**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.Thing#getSecurity <em>Security</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Security</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.Thing#getSecurity()
+ * @see #getThing()
+ * @generated
+ */
+ EReference getThing_Security();
+
+ /**
* Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.Thing#getSecurityDefinitions <em>Security Definitions</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1156,26 +1330,26 @@
EAttribute getThing_Version();
/**
- * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.Thing#getType <em>Type</em>}'.
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.Thing#getAType <em>AType</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for the reference list '<em>Type</em>'.
- * @see org.eclipse.papyrus.iotml.wot.Thing#getType()
+ * @return the meta object for the reference list '<em>AType</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.Thing#getAType()
* @see #getThing()
* @generated
*/
- EReference getThing_Type();
+ EReference getThing_AType();
/**
- * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.Thing#getContext <em>Context</em>}'.
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.Thing#getAContext <em>AContext</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for the reference list '<em>Context</em>'.
- * @see org.eclipse.papyrus.iotml.wot.Thing#getContext()
+ * @return the meta object for the reference list '<em>AContext</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.Thing#getAContext()
* @see #getThing()
* @generated
*/
- EReference getThing_Context();
+ EReference getThing_AContext();
/**
* Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.Thing#getForms <em>Forms</em>}'.
@@ -1189,6 +1363,17 @@
EReference getThing_Forms();
/**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.wot.Thing#getBase_Class <em>Base Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Class</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.Thing#getBase_Class()
+ * @see #getThing()
+ * @generated
+ */
+ EReference getThing_Base_Class();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.iotml.wot.SecurityScheme <em>Security Scheme</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1210,6 +1395,28 @@
EReference getSecurityScheme_Base_Classifier();
/**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getTitle <em>Title</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Title</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.SecurityScheme#getTitle()
+ * @see #getSecurityScheme()
+ * @generated
+ */
+ EAttribute getSecurityScheme_Title();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getDescription <em>Description</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Description</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.SecurityScheme#getDescription()
+ * @see #getSecurityScheme()
+ * @generated
+ */
+ EAttribute getSecurityScheme_Description();
+
+ /**
* Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.SecurityScheme#getScheme <em>Scheme</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1428,17 +1635,6 @@
EClass getEventAffordance();
/**
- * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.wot.EventAffordance#getBase_Signal <em>Base Signal</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the reference '<em>Base Signal</em>'.
- * @see org.eclipse.papyrus.iotml.wot.EventAffordance#getBase_Signal()
- * @see #getEventAffordance()
- * @generated
- */
- EReference getEventAffordance_Base_Signal();
-
- /**
* Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.wot.EventAffordance#getData <em>Data</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1472,6 +1668,17 @@
EReference getEventAffordance_Cancellation();
/**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.wot.EventAffordance#getBase_Reception <em>Base Reception</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Reception</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.EventAffordance#getBase_Reception()
+ * @see #getEventAffordance()
+ * @generated
+ */
+ EReference getEventAffordance_Base_Reception();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance <em>Interaction Affordance</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1482,6 +1689,28 @@
EClass getInteractionAffordance();
/**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getTitle <em>Title</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Title</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.InteractionAffordance#getTitle()
+ * @see #getInteractionAffordance()
+ * @generated
+ */
+ EAttribute getInteractionAffordance_Title();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getDescription <em>Description</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Description</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.InteractionAffordance#getDescription()
+ * @see #getInteractionAffordance()
+ * @generated
+ */
+ EAttribute getInteractionAffordance_Description();
+
+ /**
* Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getForms <em>Forms</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1493,15 +1722,15 @@
EReference getInteractionAffordance_Forms();
/**
- * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getType <em>Type</em>}'.
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.InteractionAffordance#getAType <em>AType</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for the reference list '<em>Type</em>'.
- * @see org.eclipse.papyrus.iotml.wot.InteractionAffordance#getType()
+ * @return the meta object for the reference list '<em>AType</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.InteractionAffordance#getAType()
* @see #getInteractionAffordance()
* @generated
*/
- EReference getInteractionAffordance_Type();
+ EReference getInteractionAffordance_AType();
/**
* Returns the meta object for class '{@link org.eclipse.papyrus.iotml.wot.Form <em>Form</em>}'.
@@ -1591,6 +1820,28 @@
EAttribute getForm_Response();
/**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.Form#getSecurity <em>Security</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Security</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.Form#getSecurity()
+ * @see #getForm()
+ * @generated
+ */
+ EReference getForm_Security();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.wot.Form#getBase_Comment <em>Base Comment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Comment</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.Form#getBase_Comment()
+ * @see #getForm()
+ * @generated
+ */
+ EReference getForm_Base_Comment();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.iotml.wot.Type <em>Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1633,6 +1884,28 @@
EClass getDataSchema();
/**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getTitle <em>Title</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Title</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.DataSchema#getTitle()
+ * @see #getDataSchema()
+ * @generated
+ */
+ EAttribute getDataSchema_Title();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getDescription <em>Description</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Description</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.DataSchema#getDescription()
+ * @see #getDataSchema()
+ * @generated
+ */
+ EAttribute getDataSchema_Description();
+
+ /**
* Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getBase_TypedElement <em>Base Typed Element</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1644,26 +1917,15 @@
EReference getDataSchema_Base_TypedElement();
/**
- * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getEnum <em>Enum</em>}'.
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getEnum <em>Enum</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for the reference list '<em>Enum</em>'.
+ * @return the meta object for the attribute list '<em>Enum</em>'.
* @see org.eclipse.papyrus.iotml.wot.DataSchema#getEnum()
* @see #getDataSchema()
* @generated
*/
- EReference getDataSchema_Enum();
-
- /**
- * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getNumberInterval <em>Number Interval</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the reference '<em>Number Interval</em>'.
- * @see org.eclipse.papyrus.iotml.wot.DataSchema#getNumberInterval()
- * @see #getDataSchema()
- * @generated
- */
- EReference getDataSchema_NumberInterval();
+ EAttribute getDataSchema_Enum();
/**
* Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getRequired <em>Required</em>}'.
@@ -1699,15 +1961,15 @@
EReference getDataSchema_Properties();
/**
- * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getType <em>Type</em>}'.
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getAType <em>AType</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for the reference list '<em>Type</em>'.
- * @see org.eclipse.papyrus.iotml.wot.DataSchema#getType()
+ * @return the meta object for the reference list '<em>AType</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.DataSchema#getAType()
* @see #getDataSchema()
* @generated
*/
- EReference getDataSchema_Type();
+ EReference getDataSchema_AType();
/**
* Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.DataSchema#isWriteOnly <em>Write Only</em>}'.
@@ -1743,6 +2005,61 @@
EReference getDataSchema_OneOf();
/**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.DataSchema#getType()
+ * @see #getDataSchema()
+ * @generated
+ */
+ EAttribute getDataSchema_Type();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getConst <em>Const</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Const</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.DataSchema#getConst()
+ * @see #getDataSchema()
+ * @generated
+ */
+ EAttribute getDataSchema_Const();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getMinItems <em>Min Items</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Min Items</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.DataSchema#getMinItems()
+ * @see #getDataSchema()
+ * @generated
+ */
+ EAttribute getDataSchema_MinItems();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.DataSchema#getMaxItems <em>Max Items</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Max Items</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.DataSchema#getMaxItems()
+ * @see #getDataSchema()
+ * @generated
+ */
+ EAttribute getDataSchema_MaxItems();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.DataSchema#isReadOnly <em>Read Only</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Read Only</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.DataSchema#isReadOnly()
+ * @see #getDataSchema()
+ * @generated
+ */
+ EAttribute getDataSchema_ReadOnly();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.iotml.wot.ActionAffordance <em>Action Affordance</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1775,17 +2092,6 @@
EReference getActionAffordance_Output();
/**
- * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#getBase_BehavioralFeature <em>Base Behavioral Feature</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the reference '<em>Base Behavioral Feature</em>'.
- * @see org.eclipse.papyrus.iotml.wot.ActionAffordance#getBase_BehavioralFeature()
- * @see #getActionAffordance()
- * @generated
- */
- EReference getActionAffordance_Base_BehavioralFeature();
-
- /**
* Returns the meta object for the attribute '{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#isSafe <em>Safe</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1808,6 +2114,17 @@
EAttribute getActionAffordance_Idempotent();
/**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.iotml.wot.ActionAffordance#getBase_Operation <em>Base Operation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Operation</em>'.
+ * @see org.eclipse.papyrus.iotml.wot.ActionAffordance#getBase_Operation()
+ * @see #getActionAffordance()
+ * @generated
+ */
+ EReference getActionAffordance_Base_Operation();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.iotml.wot.PropertyAffordance <em>Property Affordance</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1973,6 +2290,22 @@
EClass THING = eINSTANCE.getThing();
/**
+ * The meta object literal for the '<em><b>Title</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute THING__TITLE = eINSTANCE.getThing_Title();
+
+ /**
+ * The meta object literal for the '<em><b>Description</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute THING__DESCRIPTION = eINSTANCE.getThing_Description();
+
+ /**
* The meta object literal for the '<em><b>Base</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1997,6 +2330,14 @@
EAttribute THING__SUPPORT = eINSTANCE.getThing_Support();
/**
+ * The meta object literal for the '<em><b>Security</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference THING__SECURITY = eINSTANCE.getThing_Security();
+
+ /**
* The meta object literal for the '<em><b>Security Definitions</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2045,20 +2386,20 @@
EAttribute THING__VERSION = eINSTANCE.getThing_Version();
/**
- * The meta object literal for the '<em><b>Type</b></em>' reference list feature.
+ * The meta object literal for the '<em><b>AType</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
- EReference THING__TYPE = eINSTANCE.getThing_Type();
+ EReference THING__ATYPE = eINSTANCE.getThing_AType();
/**
- * The meta object literal for the '<em><b>Context</b></em>' reference list feature.
+ * The meta object literal for the '<em><b>AContext</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
- EReference THING__CONTEXT = eINSTANCE.getThing_Context();
+ EReference THING__ACONTEXT = eINSTANCE.getThing_AContext();
/**
* The meta object literal for the '<em><b>Forms</b></em>' reference list feature.
@@ -2069,6 +2410,14 @@
EReference THING__FORMS = eINSTANCE.getThing_Forms();
/**
+ * The meta object literal for the '<em><b>Base Class</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference THING__BASE_CLASS = eINSTANCE.getThing_Base_Class();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.iotml.wot.impl.SecuritySchemeImpl <em>Security Scheme</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2087,6 +2436,22 @@
EReference SECURITY_SCHEME__BASE_CLASSIFIER = eINSTANCE.getSecurityScheme_Base_Classifier();
/**
+ * The meta object literal for the '<em><b>Title</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SECURITY_SCHEME__TITLE = eINSTANCE.getSecurityScheme_Title();
+
+ /**
+ * The meta object literal for the '<em><b>Description</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SECURITY_SCHEME__DESCRIPTION = eINSTANCE.getSecurityScheme_Description();
+
+ /**
* The meta object literal for the '<em><b>Scheme</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2251,14 +2616,6 @@
EClass EVENT_AFFORDANCE = eINSTANCE.getEventAffordance();
/**
- * The meta object literal for the '<em><b>Base Signal</b></em>' reference feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference EVENT_AFFORDANCE__BASE_SIGNAL = eINSTANCE.getEventAffordance_Base_Signal();
-
- /**
* The meta object literal for the '<em><b>Data</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2283,6 +2640,14 @@
EReference EVENT_AFFORDANCE__CANCELLATION = eINSTANCE.getEventAffordance_Cancellation();
/**
+ * The meta object literal for the '<em><b>Base Reception</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EVENT_AFFORDANCE__BASE_RECEPTION = eINSTANCE.getEventAffordance_Base_Reception();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.iotml.wot.impl.InteractionAffordanceImpl <em>Interaction Affordance</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2293,6 +2658,22 @@
EClass INTERACTION_AFFORDANCE = eINSTANCE.getInteractionAffordance();
/**
+ * The meta object literal for the '<em><b>Title</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute INTERACTION_AFFORDANCE__TITLE = eINSTANCE.getInteractionAffordance_Title();
+
+ /**
+ * The meta object literal for the '<em><b>Description</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute INTERACTION_AFFORDANCE__DESCRIPTION = eINSTANCE.getInteractionAffordance_Description();
+
+ /**
* The meta object literal for the '<em><b>Forms</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2301,12 +2682,12 @@
EReference INTERACTION_AFFORDANCE__FORMS = eINSTANCE.getInteractionAffordance_Forms();
/**
- * The meta object literal for the '<em><b>Type</b></em>' reference list feature.
+ * The meta object literal for the '<em><b>AType</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
- EReference INTERACTION_AFFORDANCE__TYPE = eINSTANCE.getInteractionAffordance_Type();
+ EReference INTERACTION_AFFORDANCE__ATYPE = eINSTANCE.getInteractionAffordance_AType();
/**
* The meta object literal for the '{@link org.eclipse.papyrus.iotml.wot.impl.FormImpl <em>Form</em>}' class.
@@ -2375,6 +2756,22 @@
EAttribute FORM__RESPONSE = eINSTANCE.getForm_Response();
/**
+ * The meta object literal for the '<em><b>Security</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FORM__SECURITY = eINSTANCE.getForm_Security();
+
+ /**
+ * The meta object literal for the '<em><b>Base Comment</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FORM__BASE_COMMENT = eINSTANCE.getForm_Base_Comment();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.iotml.wot.impl.TypeImpl <em>Type</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2411,6 +2808,22 @@
EClass DATA_SCHEMA = eINSTANCE.getDataSchema();
/**
+ * The meta object literal for the '<em><b>Title</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_SCHEMA__TITLE = eINSTANCE.getDataSchema_Title();
+
+ /**
+ * The meta object literal for the '<em><b>Description</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_SCHEMA__DESCRIPTION = eINSTANCE.getDataSchema_Description();
+
+ /**
* The meta object literal for the '<em><b>Base Typed Element</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2419,20 +2832,12 @@
EReference DATA_SCHEMA__BASE_TYPED_ELEMENT = eINSTANCE.getDataSchema_Base_TypedElement();
/**
- * The meta object literal for the '<em><b>Enum</b></em>' reference list feature.
+ * The meta object literal for the '<em><b>Enum</b></em>' attribute list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
- EReference DATA_SCHEMA__ENUM = eINSTANCE.getDataSchema_Enum();
-
- /**
- * The meta object literal for the '<em><b>Number Interval</b></em>' reference feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DATA_SCHEMA__NUMBER_INTERVAL = eINSTANCE.getDataSchema_NumberInterval();
+ EAttribute DATA_SCHEMA__ENUM = eINSTANCE.getDataSchema_Enum();
/**
* The meta object literal for the '<em><b>Required</b></em>' reference list feature.
@@ -2459,12 +2864,12 @@
EReference DATA_SCHEMA__PROPERTIES = eINSTANCE.getDataSchema_Properties();
/**
- * The meta object literal for the '<em><b>Type</b></em>' reference list feature.
+ * The meta object literal for the '<em><b>AType</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
- EReference DATA_SCHEMA__TYPE = eINSTANCE.getDataSchema_Type();
+ EReference DATA_SCHEMA__ATYPE = eINSTANCE.getDataSchema_AType();
/**
* The meta object literal for the '<em><b>Write Only</b></em>' attribute feature.
@@ -2491,6 +2896,46 @@
EReference DATA_SCHEMA__ONE_OF = eINSTANCE.getDataSchema_OneOf();
/**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_SCHEMA__TYPE = eINSTANCE.getDataSchema_Type();
+
+ /**
+ * The meta object literal for the '<em><b>Const</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_SCHEMA__CONST = eINSTANCE.getDataSchema_Const();
+
+ /**
+ * The meta object literal for the '<em><b>Min Items</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_SCHEMA__MIN_ITEMS = eINSTANCE.getDataSchema_MinItems();
+
+ /**
+ * The meta object literal for the '<em><b>Max Items</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_SCHEMA__MAX_ITEMS = eINSTANCE.getDataSchema_MaxItems();
+
+ /**
+ * The meta object literal for the '<em><b>Read Only</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_SCHEMA__READ_ONLY = eINSTANCE.getDataSchema_ReadOnly();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.iotml.wot.impl.ActionAffordanceImpl <em>Action Affordance</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2517,14 +2962,6 @@
EReference ACTION_AFFORDANCE__OUTPUT = eINSTANCE.getActionAffordance_Output();
/**
- * The meta object literal for the '<em><b>Base Behavioral Feature</b></em>' reference feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference ACTION_AFFORDANCE__BASE_BEHAVIORAL_FEATURE = eINSTANCE.getActionAffordance_Base_BehavioralFeature();
-
- /**
* The meta object literal for the '<em><b>Safe</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2541,6 +2978,14 @@
EAttribute ACTION_AFFORDANCE__IDEMPOTENT = eINSTANCE.getActionAffordance_Idempotent();
/**
+ * The meta object literal for the '<em><b>Base Operation</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ACTION_AFFORDANCE__BASE_OPERATION = eINSTANCE.getActionAffordance_Base_Operation();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.iotml.wot.impl.PropertyAffordanceImpl <em>Property Affordance</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ActionAffordanceImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ActionAffordanceImpl.java
index bc001a4..8ca1596 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ActionAffordanceImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ActionAffordanceImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
@@ -25,6 +26,13 @@
import org.eclipse.papyrus.iotml.wot.WoTPackage;
import org.eclipse.uml2.uml.BehavioralFeature;
+import org.eclipse.uml2.uml.Operation;
+import org.eclipse.uml2.uml.Parameter;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+import com.fasterxml.jackson.annotation.JsonGetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/**
* <!-- begin-user-doc -->
@@ -34,45 +42,26 @@
* The following features are implemented:
* </p>
* <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.ActionAffordanceImpl#getBase_Operation <em>Base Operation</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ActionAffordanceImpl#getInput <em>Input</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ActionAffordanceImpl#getOutput <em>Output</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.impl.ActionAffordanceImpl#getBase_BehavioralFeature <em>Base Behavioral Feature</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ActionAffordanceImpl#isSafe <em>Safe</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ActionAffordanceImpl#isIdempotent <em>Idempotent</em>}</li>
* </ul>
*
* @generated
*/
+@JsonPropertyOrder({"@type", "title", "description", "input", "output", "safe", "idempotent"})
public class ActionAffordanceImpl extends InteractionAffordanceImpl implements ActionAffordance {
/**
- * The cached value of the '{@link #getInput() <em>Input</em>}' reference.
+ * The cached value of the '{@link #getBase_Operation() <em>Base Operation</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #getInput()
+ * @see #getBase_Operation()
* @generated
* @ordered
*/
- protected DataSchema input;
-
- /**
- * The cached value of the '{@link #getOutput() <em>Output</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getOutput()
- * @generated
- * @ordered
- */
- protected DataSchema output;
-
- /**
- * The cached value of the '{@link #getBase_BehavioralFeature() <em>Base Behavioral Feature</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getBase_BehavioralFeature()
- * @generated
- * @ordered
- */
- protected BehavioralFeature base_BehavioralFeature;
+ protected Operation base_Operation;
/**
* The default value of the '{@link #isSafe() <em>Safe</em>}' attribute.
@@ -139,56 +128,28 @@
* @generated
*/
@Override
+ @JsonGetter("input")
public DataSchema getInput() {
- if (input != null && input.eIsProxy()) {
- InternalEObject oldInput = (InternalEObject)input;
- input = (DataSchema)eResolveProxy(oldInput);
- if (input != oldInput) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, WoTPackage.ACTION_AFFORDANCE__INPUT, oldInput, input));
- }
- }
- return input;
+ DataSchema input = basicGetInput();
+ return input != null && input.eIsProxy() ? (DataSchema)eResolveProxy((InternalEObject)input) : input;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @generated
+ * @generated NOT
*/
public DataSchema basicGetInput() {
- return input;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void setInput(DataSchema newInput) {
- DataSchema oldInput = input;
- input = newInput;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, WoTPackage.ACTION_AFFORDANCE__INPUT, oldInput, input));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public DataSchema getOutput() {
- if (output != null && output.eIsProxy()) {
- InternalEObject oldOutput = (InternalEObject)output;
- output = (DataSchema)eResolveProxy(oldOutput);
- if (output != oldOutput) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, WoTPackage.ACTION_AFFORDANCE__OUTPUT, oldOutput, output));
+ BehavioralFeature behaviorFeature = this.getBase_Operation();
+ if (behaviorFeature != null) {
+ for (Parameter inputParameter : behaviorFeature.inputParameters()) {
+ DataSchema dataSchema = UMLUtil.getStereotypeApplication(inputParameter, DataSchema.class);
+ if (dataSchema != null) {
+ return dataSchema;
+ }
}
}
- return output;
+ return null;
}
/**
@@ -196,48 +157,42 @@
* <!-- end-user-doc -->
* @generated
*/
+ @Override
+ @JsonIgnore
+ public void setInput(DataSchema newInput) {
+ // TODO: implement this method to set the 'Input' reference
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonGetter("output")
+ public DataSchema getOutput() {
+ DataSchema output = basicGetOutput();
+ return output != null && output.eIsProxy() ? (DataSchema)eResolveProxy((InternalEObject)output) : output;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
public DataSchema basicGetOutput() {
- return output;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void setOutput(DataSchema newOutput) {
- DataSchema oldOutput = output;
- output = newOutput;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, WoTPackage.ACTION_AFFORDANCE__OUTPUT, oldOutput, output));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public BehavioralFeature getBase_BehavioralFeature() {
- if (base_BehavioralFeature != null && base_BehavioralFeature.eIsProxy()) {
- InternalEObject oldBase_BehavioralFeature = (InternalEObject)base_BehavioralFeature;
- base_BehavioralFeature = (BehavioralFeature)eResolveProxy(oldBase_BehavioralFeature);
- if (base_BehavioralFeature != oldBase_BehavioralFeature) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, WoTPackage.ACTION_AFFORDANCE__BASE_BEHAVIORAL_FEATURE, oldBase_BehavioralFeature, base_BehavioralFeature));
+ BehavioralFeature behaviorFeature = this.getBase_Operation();
+ if (behaviorFeature != null) {
+ for (Parameter inputParameter : behaviorFeature.inputParameters()) {
+ DataSchema dataSchema = UMLUtil.getStereotypeApplication(inputParameter, DataSchema.class);
+ if (dataSchema != null) {
+ return dataSchema;
+ }
}
}
- return base_BehavioralFeature;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public BehavioralFeature basicGetBase_BehavioralFeature() {
- return base_BehavioralFeature;
+ return null;
}
/**
@@ -246,11 +201,11 @@
* @generated
*/
@Override
- public void setBase_BehavioralFeature(BehavioralFeature newBase_BehavioralFeature) {
- BehavioralFeature oldBase_BehavioralFeature = base_BehavioralFeature;
- base_BehavioralFeature = newBase_BehavioralFeature;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, WoTPackage.ACTION_AFFORDANCE__BASE_BEHAVIORAL_FEATURE, oldBase_BehavioralFeature, base_BehavioralFeature));
+ @JsonIgnore
+ public void setOutput(DataSchema newOutput) {
+ // TODO: implement this method to set the 'Output' reference
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
}
/**
@@ -259,6 +214,7 @@
* @generated
*/
@Override
+ @JsonGetter("safe")
public boolean isSafe() {
return safe;
}
@@ -269,6 +225,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setSafe(boolean newSafe) {
boolean oldSafe = safe;
safe = newSafe;
@@ -282,6 +239,7 @@
* @generated
*/
@Override
+ @JsonGetter("idempotent")
public boolean isIdempotent() {
return idempotent;
}
@@ -292,6 +250,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setIdempotent(boolean newIdempotent) {
boolean oldIdempotent = idempotent;
idempotent = newIdempotent;
@@ -305,17 +264,59 @@
* @generated
*/
@Override
+ @JsonIgnore
+ public Operation getBase_Operation() {
+ if (base_Operation != null && base_Operation.eIsProxy()) {
+ InternalEObject oldBase_Operation = (InternalEObject)base_Operation;
+ base_Operation = (Operation)eResolveProxy(oldBase_Operation);
+ if (base_Operation != oldBase_Operation) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, WoTPackage.ACTION_AFFORDANCE__BASE_OPERATION, oldBase_Operation, base_Operation));
+ }
+ }
+ return base_Operation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Operation basicGetBase_Operation() {
+ return base_Operation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setBase_Operation(Operation newBase_Operation) {
+ Operation oldBase_Operation = base_Operation;
+ base_Operation = newBase_Operation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, WoTPackage.ACTION_AFFORDANCE__BASE_OPERATION, oldBase_Operation, base_Operation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
+ case WoTPackage.ACTION_AFFORDANCE__BASE_OPERATION:
+ if (resolve) return getBase_Operation();
+ return basicGetBase_Operation();
case WoTPackage.ACTION_AFFORDANCE__INPUT:
if (resolve) return getInput();
return basicGetInput();
case WoTPackage.ACTION_AFFORDANCE__OUTPUT:
if (resolve) return getOutput();
return basicGetOutput();
- case WoTPackage.ACTION_AFFORDANCE__BASE_BEHAVIORAL_FEATURE:
- if (resolve) return getBase_BehavioralFeature();
- return basicGetBase_BehavioralFeature();
case WoTPackage.ACTION_AFFORDANCE__SAFE:
return isSafe();
case WoTPackage.ACTION_AFFORDANCE__IDEMPOTENT:
@@ -332,15 +333,15 @@
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
+ case WoTPackage.ACTION_AFFORDANCE__BASE_OPERATION:
+ setBase_Operation((Operation)newValue);
+ return;
case WoTPackage.ACTION_AFFORDANCE__INPUT:
setInput((DataSchema)newValue);
return;
case WoTPackage.ACTION_AFFORDANCE__OUTPUT:
setOutput((DataSchema)newValue);
return;
- case WoTPackage.ACTION_AFFORDANCE__BASE_BEHAVIORAL_FEATURE:
- setBase_BehavioralFeature((BehavioralFeature)newValue);
- return;
case WoTPackage.ACTION_AFFORDANCE__SAFE:
setSafe((Boolean)newValue);
return;
@@ -359,15 +360,15 @@
@Override
public void eUnset(int featureID) {
switch (featureID) {
+ case WoTPackage.ACTION_AFFORDANCE__BASE_OPERATION:
+ setBase_Operation((Operation)null);
+ return;
case WoTPackage.ACTION_AFFORDANCE__INPUT:
setInput((DataSchema)null);
return;
case WoTPackage.ACTION_AFFORDANCE__OUTPUT:
setOutput((DataSchema)null);
return;
- case WoTPackage.ACTION_AFFORDANCE__BASE_BEHAVIORAL_FEATURE:
- setBase_BehavioralFeature((BehavioralFeature)null);
- return;
case WoTPackage.ACTION_AFFORDANCE__SAFE:
setSafe(SAFE_EDEFAULT);
return;
@@ -386,12 +387,12 @@
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
+ case WoTPackage.ACTION_AFFORDANCE__BASE_OPERATION:
+ return base_Operation != null;
case WoTPackage.ACTION_AFFORDANCE__INPUT:
- return input != null;
+ return basicGetInput() != null;
case WoTPackage.ACTION_AFFORDANCE__OUTPUT:
- return output != null;
- case WoTPackage.ACTION_AFFORDANCE__BASE_BEHAVIORAL_FEATURE:
- return base_BehavioralFeature != null;
+ return basicGetOutput() != null;
case WoTPackage.ACTION_AFFORDANCE__SAFE:
return safe != SAFE_EDEFAULT;
case WoTPackage.ACTION_AFFORDANCE__IDEMPOTENT:
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ContextImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ContextImpl.java
index 40ca2df..a98b664 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ContextImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ContextImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
@@ -26,6 +27,8 @@
import org.eclipse.uml2.uml.Namespace;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Context</b></em>'.
@@ -119,6 +122,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public Namespace getBase_Namespace() {
if (base_Namespace != null && base_Namespace.eIsProxy()) {
InternalEObject oldBase_Namespace = (InternalEObject)base_Namespace;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/DataSchemaImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/DataSchemaImpl.java
index 621f688..895dc25 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/DataSchemaImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/DataSchemaImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
@@ -18,25 +19,31 @@
import org.eclipse.emf.common.notify.Notification;
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.impl.ENotificationImpl;
import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
-
-import org.eclipse.papyrus.iotml.software.core.structure.MetaValueSpecification;
-
import org.eclipse.papyrus.iotml.wot.DataSchema;
import org.eclipse.papyrus.iotml.wot.Type;
import org.eclipse.papyrus.iotml.wot.WoTPackage;
-
-import org.eclipse.uml2.uml.Interval;
+import org.eclipse.uml2.uml.Comment;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.MultiplicityElement;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.Parameter;
import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.StructuralFeature;
import org.eclipse.uml2.uml.TypedElement;
+import com.fasterxml.jackson.annotation.JsonGetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Data Schema</b></em>'.
@@ -45,22 +52,49 @@
* The following features are implemented:
* </p>
* <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getTitle <em>Title</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getBase_TypedElement <em>Base Typed Element</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getEnum <em>Enum</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getNumberInterval <em>Number Interval</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getRequired <em>Required</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getItems <em>Items</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getProperties <em>Properties</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getAType <em>AType</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#isWriteOnly <em>Write Only</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getFormat <em>Format</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getOneOf <em>One Of</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getConst <em>Const</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getMinItems <em>Min Items</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#getMaxItems <em>Max Items</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.DataSchemaImpl#isReadOnly <em>Read Only</em>}</li>
* </ul>
*
* @generated
*/
+@JsonPropertyOrder({"@type", "title", "description", "type", "const", "oneOf", "enum", "readOnly", "writeOnly", "format", "required", "properties", "items", "minItems", "maxItems"})
public class DataSchemaImpl extends MinimalEObjectImpl.Container implements DataSchema {
/**
+ * The default value of the '{@link #getTitle() <em>Title</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTitle()
+ * @generated
+ * @ordered
+ */
+ protected static final String TITLE_EDEFAULT = null;
+
+ /**
+ * The default value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected static final String DESCRIPTION_EDEFAULT = null;
+
+ /**
* The cached value of the '{@link #getBase_TypedElement() <em>Base Typed Element</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -71,24 +105,14 @@
protected TypedElement base_TypedElement;
/**
- * The cached value of the '{@link #getEnum() <em>Enum</em>}' reference list.
+ * The cached value of the '{@link #getEnum() <em>Enum</em>}' attribute list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getEnum()
* @generated
* @ordered
*/
- protected EList<MetaValueSpecification> enum_;
-
- /**
- * The cached value of the '{@link #getNumberInterval() <em>Number Interval</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getNumberInterval()
- * @generated
- * @ordered
- */
- protected Interval numberInterval;
+ protected EList<String> enum_;
/**
* The cached value of the '{@link #getRequired() <em>Required</em>}' reference list.
@@ -121,14 +145,14 @@
protected EList<DataSchema> properties;
/**
- * The cached value of the '{@link #getType() <em>Type</em>}' reference list.
+ * The cached value of the '{@link #getAType() <em>AType</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #getType()
+ * @see #getAType()
* @generated
* @ordered
*/
- protected EList<Type> type;
+ protected EList<Type> aType;
/**
* The default value of the '{@link #isWriteOnly() <em>Write Only</em>}' attribute.
@@ -181,6 +205,56 @@
protected EList<DataSchema> oneOf;
/**
+ * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected static final String TYPE_EDEFAULT = null;
+
+ /**
+ * The default value of the '{@link #getConst() <em>Const</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConst()
+ * @generated
+ * @ordered
+ */
+ protected static final String CONST_EDEFAULT = null;
+
+ /**
+ * The default value of the '{@link #getMinItems() <em>Min Items</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMinItems()
+ * @generated
+ * @ordered
+ */
+ protected static final int MIN_ITEMS_EDEFAULT = 0;
+
+ /**
+ * The default value of the '{@link #getMaxItems() <em>Max Items</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMaxItems()
+ * @generated
+ * @ordered
+ */
+ protected static final int MAX_ITEMS_EDEFAULT = 0;
+
+ /**
+ * The default value of the '{@link #isReadOnly() <em>Read Only</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isReadOnly()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean READ_ONLY_EDEFAULT = false;
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -202,9 +276,70 @@
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("title")
+ public String getTitle() {
+ NamedElement namedElement = this.getBase_TypedElement();
+ if (namedElement != null) {
+ return namedElement.getName();
+ }
+ return "";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
* @generated
*/
@Override
+ @JsonIgnore
+ public void setTitle(String newTitle) {
+ // TODO: implement this method to set the 'Title' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("description")
+ public String getDescription() {
+ Element element = this.getBase_TypedElement();
+ if (element != null) {
+ for (Comment comment : element.getOwnedComments()) {
+ if (comment.getBody() != null && !comment.getBody().isEmpty()) {
+ return comment.getBody();
+ }
+ }
+ }
+ return "";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setDescription(String newDescription) {
+ // TODO: implement this method to set the 'Description' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
public TypedElement getBase_TypedElement() {
if (base_TypedElement != null && base_TypedElement.eIsProxy()) {
InternalEObject oldBase_TypedElement = (InternalEObject)base_TypedElement;
@@ -232,6 +367,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setBase_TypedElement(TypedElement newBase_TypedElement) {
TypedElement oldBase_TypedElement = base_TypedElement;
base_TypedElement = newBase_TypedElement;
@@ -245,9 +381,10 @@
* @generated
*/
@Override
- public EList<MetaValueSpecification> getEnum() {
+ @JsonGetter("enum")
+ public EList<String> getEnum() {
if (enum_ == null) {
- enum_ = new EObjectResolvingEList<MetaValueSpecification>(MetaValueSpecification.class, this, WoTPackage.DATA_SCHEMA__ENUM);
+ enum_ = new EDataTypeUniqueEList<String>(String.class, this, WoTPackage.DATA_SCHEMA__ENUM);
}
return enum_;
}
@@ -258,46 +395,7 @@
* @generated
*/
@Override
- public Interval getNumberInterval() {
- if (numberInterval != null && numberInterval.eIsProxy()) {
- InternalEObject oldNumberInterval = (InternalEObject)numberInterval;
- numberInterval = (Interval)eResolveProxy(oldNumberInterval);
- if (numberInterval != oldNumberInterval) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, WoTPackage.DATA_SCHEMA__NUMBER_INTERVAL, oldNumberInterval, numberInterval));
- }
- }
- return numberInterval;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Interval basicGetNumberInterval() {
- return numberInterval;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void setNumberInterval(Interval newNumberInterval) {
- Interval oldNumberInterval = numberInterval;
- numberInterval = newNumberInterval;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, WoTPackage.DATA_SCHEMA__NUMBER_INTERVAL, oldNumberInterval, numberInterval));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
+ @JsonIgnore
public EList<Property> getRequired() {
if (required == null) {
required = new EObjectResolvingEList<Property>(Property.class, this, WoTPackage.DATA_SCHEMA__REQUIRED);
@@ -310,6 +408,7 @@
* <!-- end-user-doc -->
* @generated
*/
+ @JsonIgnore
public Property getRequired(String name, org.eclipse.uml2.uml.Type type) {
return getRequired(name, type, false, null);
}
@@ -319,6 +418,7 @@
* <!-- end-user-doc -->
* @generated
*/
+ @JsonIgnore
public Property getRequired(String name, org.eclipse.uml2.uml.Type type, boolean ignoreCase, EClass eClass) {
requiredLoop: for (Property required : getRequired()) {
if (eClass != null && !eClass.isInstance(required))
@@ -338,6 +438,7 @@
* @generated
*/
@Override
+ @JsonGetter("items")
public EList<DataSchema> getItems() {
if (items == null) {
items = new EObjectResolvingEList<DataSchema>(DataSchema.class, this, WoTPackage.DATA_SCHEMA__ITEMS);
@@ -351,6 +452,7 @@
* @generated
*/
@Override
+ @JsonGetter("properties")
public EList<DataSchema> getProperties() {
if (properties == null) {
properties = new EObjectResolvingEList<DataSchema>(DataSchema.class, this, WoTPackage.DATA_SCHEMA__PROPERTIES);
@@ -364,11 +466,12 @@
* @generated
*/
@Override
- public EList<Type> getType() {
- if (type == null) {
- type = new EObjectResolvingEList<Type>(Type.class, this, WoTPackage.DATA_SCHEMA__TYPE);
+ @JsonGetter("@type")
+ public EList<Type> getAType() {
+ if (aType == null) {
+ aType = new EObjectResolvingEList<Type>(Type.class, this, WoTPackage.DATA_SCHEMA__ATYPE);
}
- return type;
+ return aType;
}
/**
@@ -377,6 +480,7 @@
* @generated
*/
@Override
+ @JsonGetter("writeOnly")
public boolean isWriteOnly() {
return writeOnly;
}
@@ -387,6 +491,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setWriteOnly(boolean newWriteOnly) {
boolean oldWriteOnly = writeOnly;
writeOnly = newWriteOnly;
@@ -400,6 +505,7 @@
* @generated
*/
@Override
+ @JsonGetter("format")
public String getFormat() {
return format;
}
@@ -410,6 +516,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setFormat(String newFormat) {
String oldFormat = format;
format = newFormat;
@@ -423,6 +530,7 @@
* @generated
*/
@Override
+ @JsonGetter("oneOf")
public EList<DataSchema> getOneOf() {
if (oneOf == null) {
oneOf = new EObjectResolvingEList<DataSchema>(DataSchema.class, this, WoTPackage.DATA_SCHEMA__ONE_OF);
@@ -433,33 +541,212 @@
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("type")
+ public String getType() {
+ TypedElement typedElement = this.getBase_TypedElement();
+ if (typedElement != null) {
+ if (typedElement instanceof MultiplicityElement) {
+ MultiplicityElement multiplicityElement = (MultiplicityElement) typedElement;
+ if (multiplicityElement.upperBound() > 1) {
+ return "array";
+ }
+ }
+ if (typedElement.getType() != null) {
+ String typeName = typedElement.getType().getName();
+ if (typeName.equalsIgnoreCase("Boolean")) {
+ return "boolean";
+ } else if (typeName.equalsIgnoreCase("Integer") || typeName.equalsIgnoreCase("UnlimitedNatural")) {
+ return "integer";
+ } else if (typeName.equalsIgnoreCase("String")) {
+ return "string";
+ } else {
+ return "object";
+ }
+ }
+ }
+ return "null";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setType(String newType) {
+ // TODO: implement this method to set the 'Type' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("const")
+ public String getConst() {
+ TypedElement typedElement = this.getBase_TypedElement();
+ if (typedElement instanceof Property) {
+ Property property = (Property) typedElement;
+ if (property.getDefault() != null) {
+ return property.getDefault();
+ }
+ } else if (typedElement instanceof Parameter) {
+ Parameter parameter = (Parameter) typedElement;
+ if (parameter.getDefault() != null) {
+ return parameter.getDefault();
+ }
+ }
+ return "";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setConst(String newConst) {
+ // TODO: implement this method to set the 'Const' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("minItems")
+ public int getMinItems() {
+ TypedElement typedElement = this.getBase_TypedElement();
+ if (typedElement instanceof MultiplicityElement) {
+ MultiplicityElement multiplicityElement = (MultiplicityElement) typedElement;
+ return multiplicityElement.lowerBound();
+ }
+ return 1;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setMinItems(int newMinItems) {
+ // TODO: implement this method to set the 'Min Items' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("maxItems")
+ public int getMaxItems() {
+ TypedElement typedElement = this.getBase_TypedElement();
+ if (typedElement instanceof MultiplicityElement) {
+ MultiplicityElement multiplicityElement = (MultiplicityElement) typedElement;
+ return multiplicityElement.upperBound();
+ }
+ return 1;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setMaxItems(int newMaxItems) {
+ // TODO: implement this method to set the 'Max Items' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("readOnly")
+ public boolean isReadOnly() {
+ TypedElement typedElement = this.getBase_TypedElement();
+ if (typedElement instanceof StructuralFeature) {
+ StructuralFeature structuralFeature = (StructuralFeature) typedElement;
+ return structuralFeature.isReadOnly();
+ }
+ return false;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setReadOnly(boolean newReadOnly) {
+ // TODO: implement this method to set the 'Read Only' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
+ case WoTPackage.DATA_SCHEMA__TITLE:
+ return getTitle();
+ case WoTPackage.DATA_SCHEMA__DESCRIPTION:
+ return getDescription();
case WoTPackage.DATA_SCHEMA__BASE_TYPED_ELEMENT:
if (resolve) return getBase_TypedElement();
return basicGetBase_TypedElement();
case WoTPackage.DATA_SCHEMA__ENUM:
return getEnum();
- case WoTPackage.DATA_SCHEMA__NUMBER_INTERVAL:
- if (resolve) return getNumberInterval();
- return basicGetNumberInterval();
case WoTPackage.DATA_SCHEMA__REQUIRED:
return getRequired();
case WoTPackage.DATA_SCHEMA__ITEMS:
return getItems();
case WoTPackage.DATA_SCHEMA__PROPERTIES:
return getProperties();
- case WoTPackage.DATA_SCHEMA__TYPE:
- return getType();
+ case WoTPackage.DATA_SCHEMA__ATYPE:
+ return getAType();
case WoTPackage.DATA_SCHEMA__WRITE_ONLY:
return isWriteOnly();
case WoTPackage.DATA_SCHEMA__FORMAT:
return getFormat();
case WoTPackage.DATA_SCHEMA__ONE_OF:
return getOneOf();
+ case WoTPackage.DATA_SCHEMA__TYPE:
+ return getType();
+ case WoTPackage.DATA_SCHEMA__CONST:
+ return getConst();
+ case WoTPackage.DATA_SCHEMA__MIN_ITEMS:
+ return getMinItems();
+ case WoTPackage.DATA_SCHEMA__MAX_ITEMS:
+ return getMaxItems();
+ case WoTPackage.DATA_SCHEMA__READ_ONLY:
+ return isReadOnly();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -473,15 +760,18 @@
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
+ case WoTPackage.DATA_SCHEMA__TITLE:
+ setTitle((String)newValue);
+ return;
+ case WoTPackage.DATA_SCHEMA__DESCRIPTION:
+ setDescription((String)newValue);
+ return;
case WoTPackage.DATA_SCHEMA__BASE_TYPED_ELEMENT:
setBase_TypedElement((TypedElement)newValue);
return;
case WoTPackage.DATA_SCHEMA__ENUM:
getEnum().clear();
- getEnum().addAll((Collection<? extends MetaValueSpecification>)newValue);
- return;
- case WoTPackage.DATA_SCHEMA__NUMBER_INTERVAL:
- setNumberInterval((Interval)newValue);
+ getEnum().addAll((Collection<? extends String>)newValue);
return;
case WoTPackage.DATA_SCHEMA__REQUIRED:
getRequired().clear();
@@ -495,9 +785,9 @@
getProperties().clear();
getProperties().addAll((Collection<? extends DataSchema>)newValue);
return;
- case WoTPackage.DATA_SCHEMA__TYPE:
- getType().clear();
- getType().addAll((Collection<? extends Type>)newValue);
+ case WoTPackage.DATA_SCHEMA__ATYPE:
+ getAType().clear();
+ getAType().addAll((Collection<? extends Type>)newValue);
return;
case WoTPackage.DATA_SCHEMA__WRITE_ONLY:
setWriteOnly((Boolean)newValue);
@@ -509,6 +799,21 @@
getOneOf().clear();
getOneOf().addAll((Collection<? extends DataSchema>)newValue);
return;
+ case WoTPackage.DATA_SCHEMA__TYPE:
+ setType((String)newValue);
+ return;
+ case WoTPackage.DATA_SCHEMA__CONST:
+ setConst((String)newValue);
+ return;
+ case WoTPackage.DATA_SCHEMA__MIN_ITEMS:
+ setMinItems((Integer)newValue);
+ return;
+ case WoTPackage.DATA_SCHEMA__MAX_ITEMS:
+ setMaxItems((Integer)newValue);
+ return;
+ case WoTPackage.DATA_SCHEMA__READ_ONLY:
+ setReadOnly((Boolean)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -521,15 +826,18 @@
@Override
public void eUnset(int featureID) {
switch (featureID) {
+ case WoTPackage.DATA_SCHEMA__TITLE:
+ setTitle(TITLE_EDEFAULT);
+ return;
+ case WoTPackage.DATA_SCHEMA__DESCRIPTION:
+ setDescription(DESCRIPTION_EDEFAULT);
+ return;
case WoTPackage.DATA_SCHEMA__BASE_TYPED_ELEMENT:
setBase_TypedElement((TypedElement)null);
return;
case WoTPackage.DATA_SCHEMA__ENUM:
getEnum().clear();
return;
- case WoTPackage.DATA_SCHEMA__NUMBER_INTERVAL:
- setNumberInterval((Interval)null);
- return;
case WoTPackage.DATA_SCHEMA__REQUIRED:
getRequired().clear();
return;
@@ -539,8 +847,8 @@
case WoTPackage.DATA_SCHEMA__PROPERTIES:
getProperties().clear();
return;
- case WoTPackage.DATA_SCHEMA__TYPE:
- getType().clear();
+ case WoTPackage.DATA_SCHEMA__ATYPE:
+ getAType().clear();
return;
case WoTPackage.DATA_SCHEMA__WRITE_ONLY:
setWriteOnly(WRITE_ONLY_EDEFAULT);
@@ -551,6 +859,21 @@
case WoTPackage.DATA_SCHEMA__ONE_OF:
getOneOf().clear();
return;
+ case WoTPackage.DATA_SCHEMA__TYPE:
+ setType(TYPE_EDEFAULT);
+ return;
+ case WoTPackage.DATA_SCHEMA__CONST:
+ setConst(CONST_EDEFAULT);
+ return;
+ case WoTPackage.DATA_SCHEMA__MIN_ITEMS:
+ setMinItems(MIN_ITEMS_EDEFAULT);
+ return;
+ case WoTPackage.DATA_SCHEMA__MAX_ITEMS:
+ setMaxItems(MAX_ITEMS_EDEFAULT);
+ return;
+ case WoTPackage.DATA_SCHEMA__READ_ONLY:
+ setReadOnly(READ_ONLY_EDEFAULT);
+ return;
}
super.eUnset(featureID);
}
@@ -563,26 +886,38 @@
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
+ case WoTPackage.DATA_SCHEMA__TITLE:
+ return TITLE_EDEFAULT == null ? getTitle() != null : !TITLE_EDEFAULT.equals(getTitle());
+ case WoTPackage.DATA_SCHEMA__DESCRIPTION:
+ return DESCRIPTION_EDEFAULT == null ? getDescription() != null : !DESCRIPTION_EDEFAULT.equals(getDescription());
case WoTPackage.DATA_SCHEMA__BASE_TYPED_ELEMENT:
return base_TypedElement != null;
case WoTPackage.DATA_SCHEMA__ENUM:
return enum_ != null && !enum_.isEmpty();
- case WoTPackage.DATA_SCHEMA__NUMBER_INTERVAL:
- return numberInterval != null;
case WoTPackage.DATA_SCHEMA__REQUIRED:
return required != null && !required.isEmpty();
case WoTPackage.DATA_SCHEMA__ITEMS:
return items != null && !items.isEmpty();
case WoTPackage.DATA_SCHEMA__PROPERTIES:
return properties != null && !properties.isEmpty();
- case WoTPackage.DATA_SCHEMA__TYPE:
- return type != null && !type.isEmpty();
+ case WoTPackage.DATA_SCHEMA__ATYPE:
+ return aType != null && !aType.isEmpty();
case WoTPackage.DATA_SCHEMA__WRITE_ONLY:
return writeOnly != WRITE_ONLY_EDEFAULT;
case WoTPackage.DATA_SCHEMA__FORMAT:
return FORMAT_EDEFAULT == null ? format != null : !FORMAT_EDEFAULT.equals(format);
case WoTPackage.DATA_SCHEMA__ONE_OF:
return oneOf != null && !oneOf.isEmpty();
+ case WoTPackage.DATA_SCHEMA__TYPE:
+ return TYPE_EDEFAULT == null ? getType() != null : !TYPE_EDEFAULT.equals(getType());
+ case WoTPackage.DATA_SCHEMA__CONST:
+ return CONST_EDEFAULT == null ? getConst() != null : !CONST_EDEFAULT.equals(getConst());
+ case WoTPackage.DATA_SCHEMA__MIN_ITEMS:
+ return getMinItems() != MIN_ITEMS_EDEFAULT;
+ case WoTPackage.DATA_SCHEMA__MAX_ITEMS:
+ return getMaxItems() != MAX_ITEMS_EDEFAULT;
+ case WoTPackage.DATA_SCHEMA__READ_ONLY:
+ return isReadOnly() != READ_ONLY_EDEFAULT;
}
return super.eIsSet(featureID);
}
@@ -597,12 +932,32 @@
if (eIsProxy()) return super.toString();
StringBuilder result = new StringBuilder(super.toString());
- result.append(" (writeOnly: ");
+ result.append(" (enum: ");
+ result.append(enum_);
+ result.append(", writeOnly: ");
result.append(writeOnly);
result.append(", format: ");
result.append(format);
result.append(')');
return result.toString();
}
+
+ /**
+ * Getter for JSON serialization
+ * @generated NOT
+ */
+ @JsonGetter("required")
+ public EList<String> getRequiredAsString() {
+ EList<String> requiredAsString = new UniqueEList<String>();
+ if (required == null) {
+ required = new EObjectResolvingEList<Property>(Property.class, this, WoTPackage.DATA_SCHEMA__REQUIRED);
+ }
+ for (Property property : required) {
+ if (!property.getName().isEmpty()) {
+ requiredAsString.add(property.getName());
+ }
+ }
+ return requiredAsString;
+ }
} //DataSchemaImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/EventAffordanceImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/EventAffordanceImpl.java
index 68690a7..5c9dd65 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/EventAffordanceImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/EventAffordanceImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
@@ -23,8 +24,11 @@
import org.eclipse.papyrus.iotml.wot.DataSchema;
import org.eclipse.papyrus.iotml.wot.EventAffordance;
import org.eclipse.papyrus.iotml.wot.WoTPackage;
+import org.eclipse.uml2.uml.Reception;
-import org.eclipse.uml2.uml.Signal;
+import com.fasterxml.jackson.annotation.JsonGetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/**
* <!-- begin-user-doc -->
@@ -34,7 +38,7 @@
* The following features are implemented:
* </p>
* <ul>
- * <li>{@link org.eclipse.papyrus.iotml.wot.impl.EventAffordanceImpl#getBase_Signal <em>Base Signal</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.EventAffordanceImpl#getBase_Reception <em>Base Reception</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.EventAffordanceImpl#getData <em>Data</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.EventAffordanceImpl#getSubscription <em>Subscription</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.EventAffordanceImpl#getCancellation <em>Cancellation</em>}</li>
@@ -42,16 +46,17 @@
*
* @generated
*/
+@JsonPropertyOrder({"@type", "title", "description", "data", "subscription", "cancellation"})
public class EventAffordanceImpl extends InteractionAffordanceImpl implements EventAffordance {
/**
- * The cached value of the '{@link #getBase_Signal() <em>Base Signal</em>}' reference.
+ * The cached value of the '{@link #getBase_Reception() <em>Base Reception</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #getBase_Signal()
+ * @see #getBase_Reception()
* @generated
* @ordered
*/
- protected Signal base_Signal;
+ protected Reception base_Reception;
/**
* The cached value of the '{@link #getData() <em>Data</em>}' reference.
@@ -108,46 +113,7 @@
* @generated
*/
@Override
- public Signal getBase_Signal() {
- if (base_Signal != null && base_Signal.eIsProxy()) {
- InternalEObject oldBase_Signal = (InternalEObject)base_Signal;
- base_Signal = (Signal)eResolveProxy(oldBase_Signal);
- if (base_Signal != oldBase_Signal) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, WoTPackage.EVENT_AFFORDANCE__BASE_SIGNAL, oldBase_Signal, base_Signal));
- }
- }
- return base_Signal;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Signal basicGetBase_Signal() {
- return base_Signal;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void setBase_Signal(Signal newBase_Signal) {
- Signal oldBase_Signal = base_Signal;
- base_Signal = newBase_Signal;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, WoTPackage.EVENT_AFFORDANCE__BASE_SIGNAL, oldBase_Signal, base_Signal));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
+ @JsonGetter("data")
public DataSchema getData() {
if (data != null && data.eIsProxy()) {
InternalEObject oldData = (InternalEObject)data;
@@ -175,6 +141,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setData(DataSchema newData) {
DataSchema oldData = data;
data = newData;
@@ -188,6 +155,7 @@
* @generated
*/
@Override
+ @JsonGetter("subscription")
public DataSchema getSubscription() {
if (subscription != null && subscription.eIsProxy()) {
InternalEObject oldSubscription = (InternalEObject)subscription;
@@ -215,6 +183,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setSubscription(DataSchema newSubscription) {
DataSchema oldSubscription = subscription;
subscription = newSubscription;
@@ -228,6 +197,7 @@
* @generated
*/
@Override
+ @JsonGetter("cancellation")
public DataSchema getCancellation() {
if (cancellation != null && cancellation.eIsProxy()) {
InternalEObject oldCancellation = (InternalEObject)cancellation;
@@ -255,6 +225,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setCancellation(DataSchema newCancellation) {
DataSchema oldCancellation = cancellation;
cancellation = newCancellation;
@@ -268,11 +239,53 @@
* @generated
*/
@Override
+ @JsonIgnore
+ public Reception getBase_Reception() {
+ if (base_Reception != null && base_Reception.eIsProxy()) {
+ InternalEObject oldBase_Reception = (InternalEObject)base_Reception;
+ base_Reception = (Reception)eResolveProxy(oldBase_Reception);
+ if (base_Reception != oldBase_Reception) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, WoTPackage.EVENT_AFFORDANCE__BASE_RECEPTION, oldBase_Reception, base_Reception));
+ }
+ }
+ return base_Reception;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Reception basicGetBase_Reception() {
+ return base_Reception;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setBase_Reception(Reception newBase_Reception) {
+ Reception oldBase_Reception = base_Reception;
+ base_Reception = newBase_Reception;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, WoTPackage.EVENT_AFFORDANCE__BASE_RECEPTION, oldBase_Reception, base_Reception));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
- case WoTPackage.EVENT_AFFORDANCE__BASE_SIGNAL:
- if (resolve) return getBase_Signal();
- return basicGetBase_Signal();
+ case WoTPackage.EVENT_AFFORDANCE__BASE_RECEPTION:
+ if (resolve) return getBase_Reception();
+ return basicGetBase_Reception();
case WoTPackage.EVENT_AFFORDANCE__DATA:
if (resolve) return getData();
return basicGetData();
@@ -294,8 +307,8 @@
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
- case WoTPackage.EVENT_AFFORDANCE__BASE_SIGNAL:
- setBase_Signal((Signal)newValue);
+ case WoTPackage.EVENT_AFFORDANCE__BASE_RECEPTION:
+ setBase_Reception((Reception)newValue);
return;
case WoTPackage.EVENT_AFFORDANCE__DATA:
setData((DataSchema)newValue);
@@ -318,8 +331,8 @@
@Override
public void eUnset(int featureID) {
switch (featureID) {
- case WoTPackage.EVENT_AFFORDANCE__BASE_SIGNAL:
- setBase_Signal((Signal)null);
+ case WoTPackage.EVENT_AFFORDANCE__BASE_RECEPTION:
+ setBase_Reception((Reception)null);
return;
case WoTPackage.EVENT_AFFORDANCE__DATA:
setData((DataSchema)null);
@@ -342,8 +355,8 @@
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
- case WoTPackage.EVENT_AFFORDANCE__BASE_SIGNAL:
- return base_Signal != null;
+ case WoTPackage.EVENT_AFFORDANCE__BASE_RECEPTION:
+ return base_Reception != null;
case WoTPackage.EVENT_AFFORDANCE__DATA:
return data != null;
case WoTPackage.EVENT_AFFORDANCE__SUBSCRIPTION:
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/FormImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/FormImpl.java
index 0a3b214..dcbc1eb 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/FormImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/FormImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
@@ -18,18 +19,25 @@
import org.eclipse.emf.common.notify.Notification;
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.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
-import org.eclipse.papyrus.iotml.software.core.structure.impl.MetaValueSpecificationImpl;
-
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import org.eclipse.papyrus.iotml.wot.Form;
import org.eclipse.papyrus.iotml.wot.OpKind;
+import org.eclipse.papyrus.iotml.wot.SecurityScheme;
import org.eclipse.papyrus.iotml.wot.SubProtocolKind;
import org.eclipse.papyrus.iotml.wot.WoTPackage;
+import org.eclipse.uml2.uml.Comment;
+
+import com.fasterxml.jackson.annotation.JsonGetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/**
* <!-- begin-user-doc -->
@@ -46,11 +54,14 @@
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.FormImpl#getSubProtocol <em>Sub Protocol</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.FormImpl#getScopes <em>Scopes</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.FormImpl#getResponse <em>Response</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.FormImpl#getSecurity <em>Security</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.FormImpl#getBase_Comment <em>Base Comment</em>}</li>
* </ul>
*
* @generated
*/
-public class FormImpl extends MetaValueSpecificationImpl implements Form {
+@JsonPropertyOrder({"op", "href", "contentType", "contentCoding", "subProtocol", "security", "scopes", "response"})
+public class FormImpl extends MinimalEObjectImpl.Container implements Form {
/**
* The cached value of the '{@link #getOp() <em>Op</em>}' attribute list.
* <!-- begin-user-doc -->
@@ -142,6 +153,16 @@
protected SubProtocolKind subProtocol = SUB_PROTOCOL_EDEFAULT;
/**
+ * The cached value of the '{@link #getScopes() <em>Scopes</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getScopes()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> scopes;
+
+ /**
* The default value of the '{@link #getResponse() <em>Response</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -162,6 +183,26 @@
protected String response = RESPONSE_EDEFAULT;
/**
+ * The cached value of the '{@link #getSecurity() <em>Security</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSecurity()
+ * @generated
+ * @ordered
+ */
+ protected EList<SecurityScheme> security;
+
+ /**
+ * The cached value of the '{@link #getBase_Comment() <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Comment()
+ * @generated
+ * @ordered
+ */
+ protected Comment base_Comment;
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -186,6 +227,7 @@
* @generated
*/
@Override
+ @JsonGetter("op")
public EList<OpKind> getOp() {
if (op == null) {
op = new EDataTypeUniqueEList<OpKind>(OpKind.class, this, WoTPackage.FORM__OP);
@@ -199,6 +241,7 @@
* @generated
*/
@Override
+ @JsonGetter("op")
public String getHref() {
return href;
}
@@ -209,6 +252,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setHref(String newHref) {
String oldHref = href;
href = newHref;
@@ -222,6 +266,7 @@
* @generated
*/
@Override
+ @JsonGetter("contentType")
public String getContentType() {
return contentType;
}
@@ -232,6 +277,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setContentType(String newContentType) {
String oldContentType = contentType;
contentType = newContentType;
@@ -245,6 +291,7 @@
* @generated
*/
@Override
+ @JsonGetter("contentCoding")
public String getContentCoding() {
return contentCoding;
}
@@ -255,6 +302,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setContentCoding(String newContentCoding) {
String oldContentCoding = contentCoding;
contentCoding = newContentCoding;
@@ -268,6 +316,7 @@
* @generated
*/
@Override
+ @JsonGetter("subProtocol")
public SubProtocolKind getSubProtocol() {
return subProtocol;
}
@@ -278,6 +327,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setSubProtocol(SubProtocolKind newSubProtocol) {
SubProtocolKind oldSubProtocol = subProtocol;
subProtocol = newSubProtocol == null ? SUB_PROTOCOL_EDEFAULT : newSubProtocol;
@@ -291,10 +341,12 @@
* @generated
*/
@Override
+ @JsonGetter("scopes")
public EList<String> getScopes() {
- // TODO: implement this method to return the 'Scopes' attribute list
- // Ensure that you remove @generated or mark it @generated NOT
- throw new UnsupportedOperationException();
+ if (scopes == null) {
+ scopes = new EDataTypeUniqueEList<String>(String.class, this, WoTPackage.FORM__SCOPES);
+ }
+ return scopes;
}
/**
@@ -303,6 +355,7 @@
* @generated
*/
@Override
+ @JsonGetter("response")
public String getResponse() {
return response;
}
@@ -313,6 +366,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setResponse(String newResponse) {
String oldResponse = response;
response = newResponse;
@@ -326,6 +380,62 @@
* @generated
*/
@Override
+ @JsonIgnore
+ public EList<SecurityScheme> getSecurity() {
+ if (security == null) {
+ security = new EObjectResolvingEList<SecurityScheme>(SecurityScheme.class, this, WoTPackage.FORM__SECURITY);
+ }
+ return security;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public Comment getBase_Comment() {
+ if (base_Comment != null && base_Comment.eIsProxy()) {
+ InternalEObject oldBase_Comment = (InternalEObject)base_Comment;
+ base_Comment = (Comment)eResolveProxy(oldBase_Comment);
+ if (base_Comment != oldBase_Comment) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, WoTPackage.FORM__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+ }
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Comment basicGetBase_Comment() {
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setBase_Comment(Comment newBase_Comment) {
+ Comment oldBase_Comment = base_Comment;
+ base_Comment = newBase_Comment;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, WoTPackage.FORM__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case WoTPackage.FORM__OP:
@@ -342,6 +452,11 @@
return getScopes();
case WoTPackage.FORM__RESPONSE:
return getResponse();
+ case WoTPackage.FORM__SECURITY:
+ return getSecurity();
+ case WoTPackage.FORM__BASE_COMMENT:
+ if (resolve) return getBase_Comment();
+ return basicGetBase_Comment();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -378,6 +493,13 @@
case WoTPackage.FORM__RESPONSE:
setResponse((String)newValue);
return;
+ case WoTPackage.FORM__SECURITY:
+ getSecurity().clear();
+ getSecurity().addAll((Collection<? extends SecurityScheme>)newValue);
+ return;
+ case WoTPackage.FORM__BASE_COMMENT:
+ setBase_Comment((Comment)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -411,6 +533,12 @@
case WoTPackage.FORM__RESPONSE:
setResponse(RESPONSE_EDEFAULT);
return;
+ case WoTPackage.FORM__SECURITY:
+ getSecurity().clear();
+ return;
+ case WoTPackage.FORM__BASE_COMMENT:
+ setBase_Comment((Comment)null);
+ return;
}
super.eUnset(featureID);
}
@@ -434,9 +562,13 @@
case WoTPackage.FORM__SUB_PROTOCOL:
return subProtocol != SUB_PROTOCOL_EDEFAULT;
case WoTPackage.FORM__SCOPES:
- return !getScopes().isEmpty();
+ return scopes != null && !scopes.isEmpty();
case WoTPackage.FORM__RESPONSE:
return RESPONSE_EDEFAULT == null ? response != null : !RESPONSE_EDEFAULT.equals(response);
+ case WoTPackage.FORM__SECURITY:
+ return security != null && !security.isEmpty();
+ case WoTPackage.FORM__BASE_COMMENT:
+ return base_Comment != null;
}
return super.eIsSet(featureID);
}
@@ -461,10 +593,30 @@
result.append(contentCoding);
result.append(", subProtocol: ");
result.append(subProtocol);
+ result.append(", scopes: ");
+ result.append(scopes);
result.append(", response: ");
result.append(response);
result.append(')');
return result.toString();
}
+
+ /**
+ * Security attribute getter for JSON serialization
+ * @generated NOT
+ */
+ @JsonGetter("security")
+ public EList<String> getSecurityAsString() {
+ EList<String> securityAsString = new UniqueEList<String>();
+ if (security == null) {
+ security = new EObjectResolvingEList<SecurityScheme>(SecurityScheme.class, this, WoTPackage.THING__SECURITY);
+ }
+ for (SecurityScheme securityScheme : security) {
+ if (securityScheme.getTitle() != null && !securityScheme.getTitle().isEmpty()) {
+ securityAsString.add(securityScheme.getTitle());
+ }
+ }
+ return securityAsString;
+ }
} //FormImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/InteractionAffordanceImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/InteractionAffordanceImpl.java
index 385688a..9b7dae9 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/InteractionAffordanceImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/InteractionAffordanceImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
@@ -22,11 +23,17 @@
import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
-
+import org.eclipse.papyrus.iotml.wot.ActionAffordance;
+import org.eclipse.papyrus.iotml.wot.EventAffordance;
import org.eclipse.papyrus.iotml.wot.Form;
import org.eclipse.papyrus.iotml.wot.InteractionAffordance;
import org.eclipse.papyrus.iotml.wot.Type;
import org.eclipse.papyrus.iotml.wot.WoTPackage;
+import org.eclipse.uml2.uml.Comment;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.NamedElement;
+
+import com.fasterxml.jackson.annotation.JsonGetter;
/**
* <!-- begin-user-doc -->
@@ -36,14 +43,36 @@
* The following features are implemented:
* </p>
* <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.InteractionAffordanceImpl#getTitle <em>Title</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.InteractionAffordanceImpl#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.InteractionAffordanceImpl#getForms <em>Forms</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.impl.InteractionAffordanceImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.InteractionAffordanceImpl#getAType <em>AType</em>}</li>
* </ul>
*
* @generated
*/
public abstract class InteractionAffordanceImpl extends MinimalEObjectImpl.Container implements InteractionAffordance {
/**
+ * The default value of the '{@link #getTitle() <em>Title</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTitle()
+ * @generated
+ * @ordered
+ */
+ protected static final String TITLE_EDEFAULT = null;
+
+ /**
+ * The default value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected static final String DESCRIPTION_EDEFAULT = null;
+
+ /**
* The cached value of the '{@link #getForms() <em>Forms</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -54,14 +83,14 @@
protected EList<Form> forms;
/**
- * The cached value of the '{@link #getType() <em>Type</em>}' reference list.
+ * The cached value of the '{@link #getAType() <em>AType</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #getType()
+ * @see #getAType()
* @generated
* @ordered
*/
- protected EList<Type> type;
+ protected EList<Type> aType;
/**
* <!-- begin-user-doc -->
@@ -85,6 +114,76 @@
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ public String getTitle() {
+ NamedElement namedElement = null;
+ if (this instanceof ActionAffordance) {
+ ActionAffordance affordance = (ActionAffordance) this;
+ namedElement = affordance.getBase_Operation();
+ } else if (this instanceof EventAffordance) {
+ EventAffordance affordance = (EventAffordance) this;
+ namedElement = affordance.getBase_Reception();
+ }
+ if (namedElement != null) {
+ return namedElement.getName();
+ }
+ return "";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setTitle(String newTitle) {
+ // TODO: implement this method to set the 'Title' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ public String getDescription() {
+ Element element = null;
+ if (this instanceof ActionAffordance) {
+ ActionAffordance affordance = (ActionAffordance) this;
+ element = affordance.getBase_Operation();
+ } else if (this instanceof EventAffordance) {
+ EventAffordance affordance = (EventAffordance) this;
+ element = affordance.getBase_Reception();
+ }
+ if (element != null) {
+ for (Comment comment : element.getOwnedComments()) {
+ if (!comment.getBody().isEmpty()) {
+ return comment.getBody();
+ }
+ }
+ }
+ return "";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setDescription(String newDescription) {
+ // TODO: implement this method to set the 'Description' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
* @generated
*/
@Override
@@ -101,11 +200,12 @@
* @generated
*/
@Override
- public EList<Type> getType() {
- if (type == null) {
- type = new EObjectResolvingEList<Type>(Type.class, this, WoTPackage.INTERACTION_AFFORDANCE__TYPE);
+ @JsonGetter("@type")
+ public EList<Type> getAType() {
+ if (aType == null) {
+ aType = new EObjectResolvingEList<Type>(Type.class, this, WoTPackage.INTERACTION_AFFORDANCE__ATYPE);
}
- return type;
+ return aType;
}
/**
@@ -116,10 +216,14 @@
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
+ case WoTPackage.INTERACTION_AFFORDANCE__TITLE:
+ return getTitle();
+ case WoTPackage.INTERACTION_AFFORDANCE__DESCRIPTION:
+ return getDescription();
case WoTPackage.INTERACTION_AFFORDANCE__FORMS:
return getForms();
- case WoTPackage.INTERACTION_AFFORDANCE__TYPE:
- return getType();
+ case WoTPackage.INTERACTION_AFFORDANCE__ATYPE:
+ return getAType();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -133,13 +237,19 @@
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
+ case WoTPackage.INTERACTION_AFFORDANCE__TITLE:
+ setTitle((String)newValue);
+ return;
+ case WoTPackage.INTERACTION_AFFORDANCE__DESCRIPTION:
+ setDescription((String)newValue);
+ return;
case WoTPackage.INTERACTION_AFFORDANCE__FORMS:
getForms().clear();
getForms().addAll((Collection<? extends Form>)newValue);
return;
- case WoTPackage.INTERACTION_AFFORDANCE__TYPE:
- getType().clear();
- getType().addAll((Collection<? extends Type>)newValue);
+ case WoTPackage.INTERACTION_AFFORDANCE__ATYPE:
+ getAType().clear();
+ getAType().addAll((Collection<? extends Type>)newValue);
return;
}
super.eSet(featureID, newValue);
@@ -153,11 +263,17 @@
@Override
public void eUnset(int featureID) {
switch (featureID) {
+ case WoTPackage.INTERACTION_AFFORDANCE__TITLE:
+ setTitle(TITLE_EDEFAULT);
+ return;
+ case WoTPackage.INTERACTION_AFFORDANCE__DESCRIPTION:
+ setDescription(DESCRIPTION_EDEFAULT);
+ return;
case WoTPackage.INTERACTION_AFFORDANCE__FORMS:
getForms().clear();
return;
- case WoTPackage.INTERACTION_AFFORDANCE__TYPE:
- getType().clear();
+ case WoTPackage.INTERACTION_AFFORDANCE__ATYPE:
+ getAType().clear();
return;
}
super.eUnset(featureID);
@@ -171,10 +287,14 @@
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
+ case WoTPackage.INTERACTION_AFFORDANCE__TITLE:
+ return TITLE_EDEFAULT == null ? getTitle() != null : !TITLE_EDEFAULT.equals(getTitle());
+ case WoTPackage.INTERACTION_AFFORDANCE__DESCRIPTION:
+ return DESCRIPTION_EDEFAULT == null ? getDescription() != null : !DESCRIPTION_EDEFAULT.equals(getDescription());
case WoTPackage.INTERACTION_AFFORDANCE__FORMS:
return forms != null && !forms.isEmpty();
- case WoTPackage.INTERACTION_AFFORDANCE__TYPE:
- return type != null && !type.isEmpty();
+ case WoTPackage.INTERACTION_AFFORDANCE__ATYPE:
+ return aType != null && !aType.isEmpty();
}
return super.eIsSet(featureID);
}
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/LinkImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/LinkImpl.java
index 9a538de..eb4a3e6 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/LinkImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/LinkImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
@@ -26,6 +27,10 @@
import org.eclipse.uml2.uml.Association;
+import com.fasterxml.jackson.annotation.JsonGetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Link</b></em>'.
@@ -43,6 +48,7 @@
*
* @generated
*/
+@JsonPropertyOrder({"href", "type", "rel", "anchor"})
public class LinkImpl extends MinimalEObjectImpl.Container implements Link {
/**
* The cached value of the '{@link #getBase_Association() <em>Base Association</em>}' reference.
@@ -159,6 +165,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public Association getBase_Association() {
if (base_Association != null && base_Association.eIsProxy()) {
InternalEObject oldBase_Association = (InternalEObject)base_Association;
@@ -186,6 +193,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setBase_Association(Association newBase_Association) {
Association oldBase_Association = base_Association;
base_Association = newBase_Association;
@@ -199,6 +207,7 @@
* @generated
*/
@Override
+ @JsonGetter("href")
public String getHref() {
return href;
}
@@ -209,6 +218,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setHref(String newHref) {
String oldHref = href;
href = newHref;
@@ -222,6 +232,7 @@
* @generated
*/
@Override
+ @JsonGetter("type")
public String getType() {
return type;
}
@@ -232,6 +243,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setType(String newType) {
String oldType = type;
type = newType;
@@ -245,6 +257,7 @@
* @generated
*/
@Override
+ @JsonGetter("rel")
public String getRel() {
return rel;
}
@@ -255,6 +268,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setRel(String newRel) {
String oldRel = rel;
rel = newRel;
@@ -268,6 +282,7 @@
* @generated
*/
@Override
+ @JsonGetter("anchor")
public String getAnchor() {
return anchor;
}
@@ -278,6 +293,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setAnchor(String newAnchor) {
String oldAnchor = anchor;
anchor = newAnchor;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/PropertyAffordanceImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/PropertyAffordanceImpl.java
index a6b1ae9..7c04eef 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/PropertyAffordanceImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/PropertyAffordanceImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
@@ -22,6 +23,10 @@
import org.eclipse.papyrus.iotml.wot.PropertyAffordance;
import org.eclipse.papyrus.iotml.wot.WoTPackage;
+import com.fasterxml.jackson.annotation.JsonGetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Property Affordance</b></em>'.
@@ -35,6 +40,7 @@
*
* @generated
*/
+@JsonPropertyOrder({"@type", "title", "description", "observable"})
public class PropertyAffordanceImpl extends InteractionAffordanceImpl implements PropertyAffordance {
/**
* The default value of the '{@link #isObservable() <em>Observable</em>}' attribute.
@@ -81,6 +87,7 @@
* @generated
*/
@Override
+ @JsonGetter("observable")
public boolean isObservable() {
return observable;
}
@@ -91,6 +98,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setObservable(boolean newObservable) {
boolean oldObservable = observable;
observable = newObservable;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/SecuritySchemeImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/SecuritySchemeImpl.java
index 0e8fbed..cda51ab 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/SecuritySchemeImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/SecuritySchemeImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
@@ -37,6 +38,13 @@
import org.eclipse.papyrus.iotml.wot.WoTPackage;
import org.eclipse.uml2.uml.Classifier;
+import org.eclipse.uml2.uml.Comment;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.NamedElement;
+
+import com.fasterxml.jackson.annotation.JsonGetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/**
* <!-- begin-user-doc -->
@@ -47,6 +55,8 @@
* </p>
* <ul>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.SecuritySchemeImpl#getBase_Classifier <em>Base Classifier</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.SecuritySchemeImpl#getTitle <em>Title</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.SecuritySchemeImpl#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.SecuritySchemeImpl#getScheme <em>Scheme</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.SecuritySchemeImpl#getProxy <em>Proxy</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.SecuritySchemeImpl#getIn <em>In</em>}</li>
@@ -64,6 +74,7 @@
*
* @generated
*/
+@JsonPropertyOrder({"@type", "title", "description", "scheme", "proxy", "in", "qop", "name", "authorization", "alg", "format", "identity", "token", "refresh", "scopes", "flow"})
public class SecuritySchemeImpl extends MinimalEObjectImpl.Container implements SecurityScheme {
/**
* The cached value of the '{@link #getBase_Classifier() <em>Base Classifier</em>}' reference.
@@ -76,6 +87,26 @@
protected Classifier base_Classifier;
/**
+ * The default value of the '{@link #getTitle() <em>Title</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTitle()
+ * @generated
+ * @ordered
+ */
+ protected static final String TITLE_EDEFAULT = null;
+
+ /**
+ * The default value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected static final String DESCRIPTION_EDEFAULT = null;
+
+ /**
* The default value of the '{@link #getScheme() <em>Scheme</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -350,6 +381,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public Classifier getBase_Classifier() {
if (base_Classifier != null && base_Classifier.eIsProxy()) {
InternalEObject oldBase_Classifier = (InternalEObject)base_Classifier;
@@ -377,6 +409,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setBase_Classifier(Classifier newBase_Classifier) {
Classifier oldBase_Classifier = base_Classifier;
base_Classifier = newBase_Classifier;
@@ -387,9 +420,70 @@
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("title")
+ public String getTitle() {
+ NamedElement namedElement = this.getBase_Classifier();
+ if (namedElement != null) {
+ return namedElement.getName();
+ }
+ return "";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
* @generated
*/
@Override
+ @JsonIgnore
+ public void setTitle(String newTitle) {
+ // TODO: implement this method to set the 'Title' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("description")
+ public String getDescription() {
+ Element element = this.getBase_Classifier();
+ if (element != null) {
+ for (Comment comment : element.getOwnedComments()) {
+ if (!comment.getBody().isEmpty()) {
+ return comment.getBody();
+ }
+ }
+ }
+ return "";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setDescription(String newDescription) {
+ // TODO: implement this method to set the 'Description' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonGetter("scheme")
public SecuritySchemeKind getScheme() {
return scheme;
}
@@ -400,6 +494,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setScheme(SecuritySchemeKind newScheme) {
SecuritySchemeKind oldScheme = scheme;
scheme = newScheme == null ? SCHEME_EDEFAULT : newScheme;
@@ -413,6 +508,7 @@
* @generated
*/
@Override
+ @JsonGetter("proxy")
public String getProxy() {
return proxy;
}
@@ -423,6 +519,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setProxy(String newProxy) {
String oldProxy = proxy;
proxy = newProxy;
@@ -436,6 +533,7 @@
* @generated
*/
@Override
+ @JsonGetter("in")
public SecurityAuthenticationInformationLocationKind getIn() {
return in;
}
@@ -446,6 +544,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setIn(SecurityAuthenticationInformationLocationKind newIn) {
SecurityAuthenticationInformationLocationKind oldIn = in;
in = newIn == null ? IN_EDEFAULT : newIn;
@@ -459,6 +558,7 @@
* @generated
*/
@Override
+ @JsonGetter("qop")
public QoPKind getQop() {
return qop;
}
@@ -469,6 +569,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setQop(QoPKind newQop) {
QoPKind oldQop = qop;
qop = newQop == null ? QOP_EDEFAULT : newQop;
@@ -482,6 +583,7 @@
* @generated
*/
@Override
+ @JsonGetter("name")
public String getName() {
return name;
}
@@ -492,6 +594,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setName(String newName) {
String oldName = name;
name = newName;
@@ -505,6 +608,7 @@
* @generated
*/
@Override
+ @JsonGetter("authorization")
public String getAuthorization() {
return authorization;
}
@@ -515,6 +619,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setAuthorization(String newAuthorization) {
String oldAuthorization = authorization;
authorization = newAuthorization;
@@ -528,6 +633,7 @@
* @generated
*/
@Override
+ @JsonGetter("alg")
public SecurityAlgorithmKind getAlg() {
return alg;
}
@@ -538,6 +644,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setAlg(SecurityAlgorithmKind newAlg) {
SecurityAlgorithmKind oldAlg = alg;
alg = newAlg == null ? ALG_EDEFAULT : newAlg;
@@ -551,6 +658,7 @@
* @generated
*/
@Override
+ @JsonGetter("format")
public SecurityAuthenticationFormatKind getFormat() {
return format;
}
@@ -561,6 +669,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setFormat(SecurityAuthenticationFormatKind newFormat) {
SecurityAuthenticationFormatKind oldFormat = format;
format = newFormat == null ? FORMAT_EDEFAULT : newFormat;
@@ -574,6 +683,7 @@
* @generated
*/
@Override
+ @JsonGetter("identity")
public String getIdentity() {
return identity;
}
@@ -584,6 +694,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setIdentity(String newIdentity) {
String oldIdentity = identity;
identity = newIdentity;
@@ -597,6 +708,7 @@
* @generated
*/
@Override
+ @JsonGetter("token")
public String getToken() {
return token;
}
@@ -607,6 +719,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setToken(String newToken) {
String oldToken = token;
token = newToken;
@@ -620,6 +733,7 @@
* @generated
*/
@Override
+ @JsonGetter("refresh")
public String getRefresh() {
return refresh;
}
@@ -630,6 +744,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setRefresh(String newRefresh) {
String oldRefresh = refresh;
refresh = newRefresh;
@@ -643,6 +758,7 @@
* @generated
*/
@Override
+ @JsonGetter("scopes")
public EList<String> getScopes() {
if (scopes == null) {
scopes = new EDataTypeUniqueEList<String>(String.class, this, WoTPackage.SECURITY_SCHEME__SCOPES);
@@ -656,6 +772,7 @@
* @generated
*/
@Override
+ @JsonGetter("flow")
public AuthorizationFlowKind getFlow() {
return flow;
}
@@ -666,6 +783,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setFlow(AuthorizationFlowKind newFlow) {
AuthorizationFlowKind oldFlow = flow;
flow = newFlow == null ? FLOW_EDEFAULT : newFlow;
@@ -684,6 +802,10 @@
case WoTPackage.SECURITY_SCHEME__BASE_CLASSIFIER:
if (resolve) return getBase_Classifier();
return basicGetBase_Classifier();
+ case WoTPackage.SECURITY_SCHEME__TITLE:
+ return getTitle();
+ case WoTPackage.SECURITY_SCHEME__DESCRIPTION:
+ return getDescription();
case WoTPackage.SECURITY_SCHEME__SCHEME:
return getScheme();
case WoTPackage.SECURITY_SCHEME__PROXY:
@@ -726,6 +848,12 @@
case WoTPackage.SECURITY_SCHEME__BASE_CLASSIFIER:
setBase_Classifier((Classifier)newValue);
return;
+ case WoTPackage.SECURITY_SCHEME__TITLE:
+ setTitle((String)newValue);
+ return;
+ case WoTPackage.SECURITY_SCHEME__DESCRIPTION:
+ setDescription((String)newValue);
+ return;
case WoTPackage.SECURITY_SCHEME__SCHEME:
setScheme((SecuritySchemeKind)newValue);
return;
@@ -781,6 +909,12 @@
case WoTPackage.SECURITY_SCHEME__BASE_CLASSIFIER:
setBase_Classifier((Classifier)null);
return;
+ case WoTPackage.SECURITY_SCHEME__TITLE:
+ setTitle(TITLE_EDEFAULT);
+ return;
+ case WoTPackage.SECURITY_SCHEME__DESCRIPTION:
+ setDescription(DESCRIPTION_EDEFAULT);
+ return;
case WoTPackage.SECURITY_SCHEME__SCHEME:
setScheme(SCHEME_EDEFAULT);
return;
@@ -834,6 +968,10 @@
switch (featureID) {
case WoTPackage.SECURITY_SCHEME__BASE_CLASSIFIER:
return base_Classifier != null;
+ case WoTPackage.SECURITY_SCHEME__TITLE:
+ return TITLE_EDEFAULT == null ? getTitle() != null : !TITLE_EDEFAULT.equals(getTitle());
+ case WoTPackage.SECURITY_SCHEME__DESCRIPTION:
+ return DESCRIPTION_EDEFAULT == null ? getDescription() != null : !DESCRIPTION_EDEFAULT.equals(getDescription());
case WoTPackage.SECURITY_SCHEME__SCHEME:
return scheme != SCHEME_EDEFAULT;
case WoTPackage.SECURITY_SCHEME__PROXY:
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ThingImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ThingImpl.java
index 188189b..81767ad 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ThingImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/ThingImpl.java
@@ -9,24 +9,24 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
import java.util.Collection;
-
import org.eclipse.emf.common.notify.Notification;
-
+import org.eclipse.emf.common.util.BasicEMap;
import org.eclipse.emf.common.util.EList;
-
+import org.eclipse.emf.common.util.EMap;
+import org.eclipse.emf.common.util.UniqueEList;
import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
-
-import org.eclipse.papyrus.iotml.software.artefact.impl.VirtualEntityImpl;
-
import org.eclipse.papyrus.iotml.wot.ActionAffordance;
import org.eclipse.papyrus.iotml.wot.Context;
import org.eclipse.papyrus.iotml.wot.EventAffordance;
@@ -37,6 +37,18 @@
import org.eclipse.papyrus.iotml.wot.Thing;
import org.eclipse.papyrus.iotml.wot.Type;
import org.eclipse.papyrus.iotml.wot.WoTPackage;
+import org.eclipse.uml2.uml.Association;
+import org.eclipse.uml2.uml.Comment;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.Operation;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Reception;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+import com.fasterxml.jackson.annotation.JsonGetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/**
* <!-- begin-user-doc -->
@@ -46,23 +58,48 @@
* The following features are implemented:
* </p>
* <ul>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getTitle <em>Title</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getBase <em>Base</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getId <em>Id</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getSupport <em>Support</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getSecurity <em>Security</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getSecurityDefinitions <em>Security Definitions</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getLinks <em>Links</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getEvents <em>Events</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getActions <em>Actions</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getProperties <em>Properties</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getVersion <em>Version</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getType <em>Type</em>}</li>
- * <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getContext <em>Context</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getAType <em>AType</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getAContext <em>AContext</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getForms <em>Forms</em>}</li>
+ * <li>{@link org.eclipse.papyrus.iotml.wot.impl.ThingImpl#getBase_Class <em>Base Class</em>}</li>
* </ul>
*
* @generated
*/
-public class ThingImpl extends VirtualEntityImpl implements Thing {
+@JsonPropertyOrder({"@context", "@type", "id", "title", "description", "version", "support", "base", "properties", "actions", "events", "links", "forms", "security", "securityDefinitions"})
+public class ThingImpl extends MinimalEObjectImpl.Container implements Thing {
+ /**
+ * The default value of the '{@link #getTitle() <em>Title</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTitle()
+ * @generated
+ * @ordered
+ */
+ protected static final String TITLE_EDEFAULT = null;
+
+ /**
+ * The default value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected static final String DESCRIPTION_EDEFAULT = null;
+
/**
* The default value of the '{@link #getBase() <em>Base</em>}' attribute.
* <!-- begin-user-doc -->
@@ -124,6 +161,16 @@
protected String support = SUPPORT_EDEFAULT;
/**
+ * The cached value of the '{@link #getSecurity() <em>Security</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSecurity()
+ * @generated
+ * @ordered
+ */
+ protected EList<SecurityScheme> security;
+
+ /**
* The cached value of the '{@link #getSecurityDefinitions() <em>Security Definitions</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -134,36 +181,6 @@
protected EList<SecurityScheme> securityDefinitions;
/**
- * The cached value of the '{@link #getEvents() <em>Events</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getEvents()
- * @generated
- * @ordered
- */
- protected EList<EventAffordance> events;
-
- /**
- * The cached value of the '{@link #getActions() <em>Actions</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getActions()
- * @generated
- * @ordered
- */
- protected EList<ActionAffordance> actions;
-
- /**
- * The cached value of the '{@link #getProperties() <em>Properties</em>}' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getProperties()
- * @generated
- * @ordered
- */
- protected EList<PropertyAffordance> properties;
-
- /**
* The default value of the '{@link #getVersion() <em>Version</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -184,24 +201,24 @@
protected String version = VERSION_EDEFAULT;
/**
- * The cached value of the '{@link #getType() <em>Type</em>}' reference list.
+ * The cached value of the '{@link #getAType() <em>AType</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #getType()
+ * @see #getAType()
* @generated
* @ordered
*/
- protected EList<Type> type;
+ protected EList<Type> aType;
/**
- * The cached value of the '{@link #getContext() <em>Context</em>}' reference list.
+ * The cached value of the '{@link #getAContext() <em>AContext</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #getContext()
+ * @see #getAContext()
* @generated
* @ordered
*/
- protected EList<Context> context;
+ protected EList<Context> aContext;
/**
* The cached value of the '{@link #getForms() <em>Forms</em>}' reference list.
@@ -214,6 +231,16 @@
protected EList<Form> forms;
/**
+ * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Class()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.Class base_Class;
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -235,9 +262,70 @@
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("title")
+ public String getTitle() {
+ NamedElement namedElement = this.getBase_Class();
+ if (namedElement != null) {
+ return namedElement.getName();
+ }
+ return "";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
* @generated
*/
@Override
+ @JsonIgnore
+ public void setTitle(String newTitle) {
+ // TODO: implement this method to set the 'Title' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ @Override
+ @JsonGetter("description")
+ public String getDescription() {
+ Element element = this.getBase_Class();
+ if (element != null) {
+ for (Comment comment : element.getOwnedComments()) {
+ if (!comment.getBody().isEmpty()) {
+ return comment.getBody();
+ }
+ }
+ }
+ return "";
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setDescription(String newDescription) {
+ // TODO: implement this method to set the 'Description' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonGetter("base")
public String getBase() {
return base;
}
@@ -248,6 +336,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setBase(String newBase) {
String oldBase = base;
base = newBase;
@@ -261,6 +350,7 @@
* @generated
*/
@Override
+ @JsonGetter("id")
public String getId() {
return id;
}
@@ -271,6 +361,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setId(String newId) {
String oldId = id;
id = newId;
@@ -284,6 +375,7 @@
* @generated
*/
@Override
+ @JsonGetter("support")
public String getSupport() {
return support;
}
@@ -294,6 +386,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setSupport(String newSupport) {
String oldSupport = support;
support = newSupport;
@@ -307,6 +400,21 @@
* @generated
*/
@Override
+ @JsonIgnore
+ public EList<SecurityScheme> getSecurity() {
+ if (security == null) {
+ security = new EObjectResolvingEList<SecurityScheme>(SecurityScheme.class, this, WoTPackage.THING__SECURITY);
+ }
+ return security;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
public EList<SecurityScheme> getSecurityDefinitions() {
if (securityDefinitions == null) {
securityDefinitions = new EObjectResolvingEList<SecurityScheme>(SecurityScheme.class, this, WoTPackage.THING__SECURITY_DEFINITIONS);
@@ -317,52 +425,84 @@
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @generated
+ * @generated NOT
*/
@Override
public EList<Link> getLinks() {
- // TODO: implement this method to return the 'Links' reference list
- // Ensure that you remove @generated or mark it @generated NOT
- throw new UnsupportedOperationException();
+ EList<Link> links = new UniqueEList<Link>();
+ org.eclipse.uml2.uml.Type thisType = this.getBase_Class();
+ for (Association association : thisType.getAssociations()) {
+ Link link = UMLUtil.getStereotypeApplication(association, Link.class);
+ if (link != null) {
+ if (association.getOwnedEnds().containsAll(association.getMemberEnds())) {
+ links.add(link);
+ } else {
+ for (Property end : association.getMemberEnds()) {
+ if (end.isNavigable() && end.getType() != thisType) {
+ links.add(link);
+ }
+ }
+ }
+ }
+ }
+ return links;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @generated
+ * @generated NOT
*/
@Override
+ @JsonIgnore
public EList<EventAffordance> getEvents() {
- if (events == null) {
- events = new EObjectResolvingEList<EventAffordance>(EventAffordance.class, this, WoTPackage.THING__EVENTS);
+ EList<EventAffordance> affordances = new UniqueEList<EventAffordance>();
+ org.eclipse.uml2.uml.Class thisType = this.getBase_Class();
+ for (Reception reception : thisType.getOwnedReceptions()) {
+ EventAffordance affordance = UMLUtil.getStereotypeApplication(reception, EventAffordance.class);
+ if (affordance != null) {
+ affordances.add(affordance);
+ }
}
- return events;
+ return affordances;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @generated
+ * @generated NOT
*/
@Override
+ @JsonIgnore
public EList<ActionAffordance> getActions() {
- if (actions == null) {
- actions = new EObjectResolvingEList<ActionAffordance>(ActionAffordance.class, this, WoTPackage.THING__ACTIONS);
+ EList<ActionAffordance> affordances = new UniqueEList<ActionAffordance>();
+ org.eclipse.uml2.uml.Class thisType = this.getBase_Class();
+ for (Operation operation : thisType.getOwnedOperations()) {
+ ActionAffordance affordance = UMLUtil.getStereotypeApplication(operation, ActionAffordance.class);
+ if (affordance != null) {
+ affordances.add(affordance);
+ }
}
- return actions;
+ return affordances;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @generated
+ * @generated NOT
*/
@Override
+ @JsonIgnore
public EList<PropertyAffordance> getProperties() {
- if (properties == null) {
- properties = new EObjectResolvingEList<PropertyAffordance>(PropertyAffordance.class, this, WoTPackage.THING__PROPERTIES);
+ EList<PropertyAffordance> affordances = new UniqueEList<PropertyAffordance>();
+ org.eclipse.uml2.uml.Class thisType = this.getBase_Class();
+ for (Operation operation : thisType.getOwnedOperations()) {
+ PropertyAffordance affordance = UMLUtil.getStereotypeApplication(operation, PropertyAffordance.class);
+ if (affordance != null) {
+ affordances.add(affordance);
+ }
}
- return properties;
+ return affordances;
}
/**
@@ -371,6 +511,7 @@
* @generated
*/
@Override
+ @JsonGetter("version")
public String getVersion() {
return version;
}
@@ -381,6 +522,7 @@
* @generated
*/
@Override
+ @JsonIgnore
public void setVersion(String newVersion) {
String oldVersion = version;
version = newVersion;
@@ -394,11 +536,12 @@
* @generated
*/
@Override
- public EList<Type> getType() {
- if (type == null) {
- type = new EObjectResolvingEList<Type>(Type.class, this, WoTPackage.THING__TYPE);
+ @JsonIgnore
+ public EList<Type> getAType() {
+ if (aType == null) {
+ aType = new EObjectResolvingEList<Type>(Type.class, this, WoTPackage.THING__ATYPE);
}
- return type;
+ return aType;
}
/**
@@ -407,11 +550,12 @@
* @generated
*/
@Override
- public EList<Context> getContext() {
- if (context == null) {
- context = new EObjectResolvingEList<Context>(Context.class, this, WoTPackage.THING__CONTEXT);
+ @JsonIgnore
+ public EList<Context> getAContext() {
+ if (aContext == null) {
+ aContext = new EObjectResolvingEList<Context>(Context.class, this, WoTPackage.THING__ACONTEXT);
}
- return context;
+ return aContext;
}
/**
@@ -433,14 +577,62 @@
* @generated
*/
@Override
+ @JsonIgnore
+ public org.eclipse.uml2.uml.Class getBase_Class() {
+ if (base_Class != null && base_Class.eIsProxy()) {
+ InternalEObject oldBase_Class = (InternalEObject)base_Class;
+ base_Class = (org.eclipse.uml2.uml.Class)eResolveProxy(oldBase_Class);
+ if (base_Class != oldBase_Class) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, WoTPackage.THING__BASE_CLASS, oldBase_Class, base_Class));
+ }
+ }
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class basicGetBase_Class() {
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ @JsonIgnore
+ public void setBase_Class(org.eclipse.uml2.uml.Class newBase_Class) {
+ org.eclipse.uml2.uml.Class oldBase_Class = base_Class;
+ base_Class = newBase_Class;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, WoTPackage.THING__BASE_CLASS, oldBase_Class, base_Class));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
+ case WoTPackage.THING__TITLE:
+ return getTitle();
+ case WoTPackage.THING__DESCRIPTION:
+ return getDescription();
case WoTPackage.THING__BASE:
return getBase();
case WoTPackage.THING__ID:
return getId();
case WoTPackage.THING__SUPPORT:
return getSupport();
+ case WoTPackage.THING__SECURITY:
+ return getSecurity();
case WoTPackage.THING__SECURITY_DEFINITIONS:
return getSecurityDefinitions();
case WoTPackage.THING__LINKS:
@@ -453,12 +645,15 @@
return getProperties();
case WoTPackage.THING__VERSION:
return getVersion();
- case WoTPackage.THING__TYPE:
- return getType();
- case WoTPackage.THING__CONTEXT:
- return getContext();
+ case WoTPackage.THING__ATYPE:
+ return getAType();
+ case WoTPackage.THING__ACONTEXT:
+ return getAContext();
case WoTPackage.THING__FORMS:
return getForms();
+ case WoTPackage.THING__BASE_CLASS:
+ if (resolve) return getBase_Class();
+ return basicGetBase_Class();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -472,6 +667,12 @@
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
+ case WoTPackage.THING__TITLE:
+ setTitle((String)newValue);
+ return;
+ case WoTPackage.THING__DESCRIPTION:
+ setDescription((String)newValue);
+ return;
case WoTPackage.THING__BASE:
setBase((String)newValue);
return;
@@ -481,6 +682,10 @@
case WoTPackage.THING__SUPPORT:
setSupport((String)newValue);
return;
+ case WoTPackage.THING__SECURITY:
+ getSecurity().clear();
+ getSecurity().addAll((Collection<? extends SecurityScheme>)newValue);
+ return;
case WoTPackage.THING__SECURITY_DEFINITIONS:
getSecurityDefinitions().clear();
getSecurityDefinitions().addAll((Collection<? extends SecurityScheme>)newValue);
@@ -504,18 +709,21 @@
case WoTPackage.THING__VERSION:
setVersion((String)newValue);
return;
- case WoTPackage.THING__TYPE:
- getType().clear();
- getType().addAll((Collection<? extends Type>)newValue);
+ case WoTPackage.THING__ATYPE:
+ getAType().clear();
+ getAType().addAll((Collection<? extends Type>)newValue);
return;
- case WoTPackage.THING__CONTEXT:
- getContext().clear();
- getContext().addAll((Collection<? extends Context>)newValue);
+ case WoTPackage.THING__ACONTEXT:
+ getAContext().clear();
+ getAContext().addAll((Collection<? extends Context>)newValue);
return;
case WoTPackage.THING__FORMS:
getForms().clear();
getForms().addAll((Collection<? extends Form>)newValue);
return;
+ case WoTPackage.THING__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -528,6 +736,12 @@
@Override
public void eUnset(int featureID) {
switch (featureID) {
+ case WoTPackage.THING__TITLE:
+ setTitle(TITLE_EDEFAULT);
+ return;
+ case WoTPackage.THING__DESCRIPTION:
+ setDescription(DESCRIPTION_EDEFAULT);
+ return;
case WoTPackage.THING__BASE:
setBase(BASE_EDEFAULT);
return;
@@ -537,6 +751,9 @@
case WoTPackage.THING__SUPPORT:
setSupport(SUPPORT_EDEFAULT);
return;
+ case WoTPackage.THING__SECURITY:
+ getSecurity().clear();
+ return;
case WoTPackage.THING__SECURITY_DEFINITIONS:
getSecurityDefinitions().clear();
return;
@@ -555,15 +772,18 @@
case WoTPackage.THING__VERSION:
setVersion(VERSION_EDEFAULT);
return;
- case WoTPackage.THING__TYPE:
- getType().clear();
+ case WoTPackage.THING__ATYPE:
+ getAType().clear();
return;
- case WoTPackage.THING__CONTEXT:
- getContext().clear();
+ case WoTPackage.THING__ACONTEXT:
+ getAContext().clear();
return;
case WoTPackage.THING__FORMS:
getForms().clear();
return;
+ case WoTPackage.THING__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)null);
+ return;
}
super.eUnset(featureID);
}
@@ -576,30 +796,38 @@
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
+ case WoTPackage.THING__TITLE:
+ return TITLE_EDEFAULT == null ? getTitle() != null : !TITLE_EDEFAULT.equals(getTitle());
+ case WoTPackage.THING__DESCRIPTION:
+ return DESCRIPTION_EDEFAULT == null ? getDescription() != null : !DESCRIPTION_EDEFAULT.equals(getDescription());
case WoTPackage.THING__BASE:
return BASE_EDEFAULT == null ? base != null : !BASE_EDEFAULT.equals(base);
case WoTPackage.THING__ID:
return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
case WoTPackage.THING__SUPPORT:
return SUPPORT_EDEFAULT == null ? support != null : !SUPPORT_EDEFAULT.equals(support);
+ case WoTPackage.THING__SECURITY:
+ return security != null && !security.isEmpty();
case WoTPackage.THING__SECURITY_DEFINITIONS:
return securityDefinitions != null && !securityDefinitions.isEmpty();
case WoTPackage.THING__LINKS:
return !getLinks().isEmpty();
case WoTPackage.THING__EVENTS:
- return events != null && !events.isEmpty();
+ return !getEvents().isEmpty();
case WoTPackage.THING__ACTIONS:
- return actions != null && !actions.isEmpty();
+ return !getActions().isEmpty();
case WoTPackage.THING__PROPERTIES:
- return properties != null && !properties.isEmpty();
+ return !getProperties().isEmpty();
case WoTPackage.THING__VERSION:
return VERSION_EDEFAULT == null ? version != null : !VERSION_EDEFAULT.equals(version);
- case WoTPackage.THING__TYPE:
- return type != null && !type.isEmpty();
- case WoTPackage.THING__CONTEXT:
- return context != null && !context.isEmpty();
+ case WoTPackage.THING__ATYPE:
+ return aType != null && !aType.isEmpty();
+ case WoTPackage.THING__ACONTEXT:
+ return aContext != null && !aContext.isEmpty();
case WoTPackage.THING__FORMS:
return forms != null && !forms.isEmpty();
+ case WoTPackage.THING__BASE_CLASS:
+ return base_Class != null;
}
return super.eIsSet(featureID);
}
@@ -625,5 +853,127 @@
result.append(')');
return result.toString();
}
+
+ /**
+ * Security attribute getter for JSON serialization
+ * @generated NOT
+ */
+ @JsonGetter("security")
+ public EList<String> getSecurityAsString() {
+ EList<String> securityAsString = new UniqueEList<String>();
+ if (security == null) {
+ security = new EObjectResolvingEList<SecurityScheme>(SecurityScheme.class, this, WoTPackage.THING__SECURITY);
+ }
+ for (SecurityScheme securityScheme : security) {
+ if (securityScheme.getTitle() != null && !securityScheme.getTitle().isEmpty()) {
+ securityAsString.add(securityScheme.getTitle());
+ }
+ }
+ return securityAsString;
+ }
+
+ /**
+ * SecurityDefinition attribute getter for JSON serialization
+ * @generated NOT
+ */
+ @JsonGetter("securityDefinitions")
+ public EMap<String, SecurityScheme> getSecurityDefinitionsAsMap() {
+ EMap<String, SecurityScheme> securityDefinitionsAsMap = new BasicEMap<String, SecurityScheme>();
+ if (securityDefinitions == null) {
+ securityDefinitions = new EObjectResolvingEList<SecurityScheme>(SecurityScheme.class, this, WoTPackage.THING__SECURITY_DEFINITIONS);
+ }
+ for (SecurityScheme securityScheme : securityDefinitions) {
+ if (securityScheme.getTitle() != null && !securityScheme.getTitle().isEmpty()) {
+ securityDefinitionsAsMap.put(securityScheme.getTitle(), securityScheme);
+ }
+ }
+ return securityDefinitionsAsMap;
+ }
+
+ /**
+ * Events attribute getter for JSON serialization
+ * @generated NOT
+ */
+ @JsonGetter("events")
+ public EMap<String, EventAffordance> getEventsAsMap() {
+ EMap<String, EventAffordance> eventsAsMap = new BasicEMap<String, EventAffordance>();
+ EList<EventAffordance> affordances = this.getEvents();
+ for (EventAffordance affordance : affordances) {
+ if (affordance.getTitle() != null && !affordance.getTitle().isEmpty()) {
+ eventsAsMap.put(affordance.getTitle(), affordance);
+ }
+ }
+ return eventsAsMap;
+ }
+
+ /**
+ * Actions attribute getter for JSON serialization
+ * @generated NOT
+ */
+ @JsonGetter("actions")
+ public EMap<String, ActionAffordance> getActionsAsMap() {
+ EMap<String, ActionAffordance> actionsAsMap = new BasicEMap<String, ActionAffordance>();
+ EList<ActionAffordance> affordances = this.getActions();
+ for (ActionAffordance affordance : affordances) {
+ if (affordance.getTitle() != null && !affordance.getTitle().isEmpty()) {
+ actionsAsMap.put(affordance.getTitle(), affordance);
+ }
+ }
+ return actionsAsMap;
+ }
+
+ /**
+ * Properties attribute getter for JSON serialization
+ * @generated NOT
+ */
+ @JsonGetter("properties")
+ public EMap<String, PropertyAffordance> getPropertiesAsMap() {
+ EMap<String, PropertyAffordance> actionsAsMap = new BasicEMap<String, PropertyAffordance>();
+ EList<PropertyAffordance> affordances = this.getProperties();
+ for (PropertyAffordance affordance : affordances) {
+ if (affordance.getTitle() != null && !affordance.getTitle().isEmpty()) {
+ actionsAsMap.put(affordance.getTitle(), affordance);
+ }
+ }
+ return actionsAsMap;
+ }
+
+ /**
+ * AType attribute getter for JSON serialization
+ * @generated NOT
+ */
+ @JsonGetter("@type")
+ public EList<String> getATypeAsStringList() {
+ EList<String> aTypeAsList = new UniqueEList<String>();
+ EList<Type> types = this.getAType();
+ for (Type type : types) {
+ if (type.getName() != null && !type.getName().isEmpty()) {
+ aTypeAsList.add(type.getName());
+ } else if (type.getBase_Type() instanceof NamedElement) {
+ NamedElement namedElement = (NamedElement) type.getBase_Type();
+ if (!namedElement.getName().isEmpty()) {
+ aTypeAsList.add(namedElement.getName());
+ }
+ }
+ }
+ return aTypeAsList;
+ }
+
+ /**
+ * AContext attribute getter for JSON serialization
+ * @generated NOT
+ */
+ @JsonGetter("@context")
+ public EMap<String, String> getAContextAsMap() {
+ EMap<String, String> aContextAsMap = new BasicEMap<String, String>();
+ aContextAsMap.put("", "https://www.w3.org/2019/wot/td/v1");
+ EList<Context> contexts = this.getAContext();
+ for (Context context : contexts) {
+ if (context.getUri() != null && !context.getUri().isEmpty() && !context.getBase_Namespace().getName().isEmpty()) {
+ aContextAsMap.put(context.getBase_Namespace().getName(), context.getUri());
+ }
+ }
+ return aContextAsMap;
+ }
} //ThingImpl
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/TypeImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/TypeImpl.java
index 43def2a..fcb3687 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/TypeImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/TypeImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/WoTFactoryImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/WoTFactoryImpl.java
index 30356f4..542c8dc 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/WoTFactoryImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/WoTFactoryImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/WoTPackageImpl.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/WoTPackageImpl.java
index 759582e..d55aa2a 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/WoTPackageImpl.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/impl/WoTPackageImpl.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.impl;
@@ -417,7 +418,7 @@
* @generated
*/
@Override
- public EAttribute getThing_Base() {
+ public EAttribute getThing_Title() {
return (EAttribute)thingEClass.getEStructuralFeatures().get(0);
}
@@ -427,7 +428,7 @@
* @generated
*/
@Override
- public EAttribute getThing_Id() {
+ public EAttribute getThing_Description() {
return (EAttribute)thingEClass.getEStructuralFeatures().get(1);
}
@@ -437,7 +438,7 @@
* @generated
*/
@Override
- public EAttribute getThing_Support() {
+ public EAttribute getThing_Base() {
return (EAttribute)thingEClass.getEStructuralFeatures().get(2);
}
@@ -447,8 +448,8 @@
* @generated
*/
@Override
- public EReference getThing_SecurityDefinitions() {
- return (EReference)thingEClass.getEStructuralFeatures().get(3);
+ public EAttribute getThing_Id() {
+ return (EAttribute)thingEClass.getEStructuralFeatures().get(3);
}
/**
@@ -457,8 +458,8 @@
* @generated
*/
@Override
- public EReference getThing_Links() {
- return (EReference)thingEClass.getEStructuralFeatures().get(4);
+ public EAttribute getThing_Support() {
+ return (EAttribute)thingEClass.getEStructuralFeatures().get(4);
}
/**
@@ -467,7 +468,7 @@
* @generated
*/
@Override
- public EReference getThing_Events() {
+ public EReference getThing_Security() {
return (EReference)thingEClass.getEStructuralFeatures().get(5);
}
@@ -477,7 +478,7 @@
* @generated
*/
@Override
- public EReference getThing_Actions() {
+ public EReference getThing_SecurityDefinitions() {
return (EReference)thingEClass.getEStructuralFeatures().get(6);
}
@@ -487,7 +488,7 @@
* @generated
*/
@Override
- public EReference getThing_Properties() {
+ public EReference getThing_Links() {
return (EReference)thingEClass.getEStructuralFeatures().get(7);
}
@@ -497,8 +498,8 @@
* @generated
*/
@Override
- public EAttribute getThing_Version() {
- return (EAttribute)thingEClass.getEStructuralFeatures().get(8);
+ public EReference getThing_Events() {
+ return (EReference)thingEClass.getEStructuralFeatures().get(8);
}
/**
@@ -507,7 +508,7 @@
* @generated
*/
@Override
- public EReference getThing_Type() {
+ public EReference getThing_Actions() {
return (EReference)thingEClass.getEStructuralFeatures().get(9);
}
@@ -517,7 +518,7 @@
* @generated
*/
@Override
- public EReference getThing_Context() {
+ public EReference getThing_Properties() {
return (EReference)thingEClass.getEStructuralFeatures().get(10);
}
@@ -527,8 +528,48 @@
* @generated
*/
@Override
+ public EAttribute getThing_Version() {
+ return (EAttribute)thingEClass.getEStructuralFeatures().get(11);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EReference getThing_AType() {
+ return (EReference)thingEClass.getEStructuralFeatures().get(12);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EReference getThing_AContext() {
+ return (EReference)thingEClass.getEStructuralFeatures().get(13);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public EReference getThing_Forms() {
- return (EReference)thingEClass.getEStructuralFeatures().get(11);
+ return (EReference)thingEClass.getEStructuralFeatures().get(14);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EReference getThing_Base_Class() {
+ return (EReference)thingEClass.getEStructuralFeatures().get(15);
}
/**
@@ -557,7 +598,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Scheme() {
+ public EAttribute getSecurityScheme_Title() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(1);
}
@@ -567,7 +608,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Proxy() {
+ public EAttribute getSecurityScheme_Description() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(2);
}
@@ -577,7 +618,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_In() {
+ public EAttribute getSecurityScheme_Scheme() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(3);
}
@@ -587,7 +628,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Qop() {
+ public EAttribute getSecurityScheme_Proxy() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(4);
}
@@ -597,7 +638,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Name() {
+ public EAttribute getSecurityScheme_In() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(5);
}
@@ -607,7 +648,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Authorization() {
+ public EAttribute getSecurityScheme_Qop() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(6);
}
@@ -617,7 +658,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Alg() {
+ public EAttribute getSecurityScheme_Name() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(7);
}
@@ -627,7 +668,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Format() {
+ public EAttribute getSecurityScheme_Authorization() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(8);
}
@@ -637,7 +678,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Identity() {
+ public EAttribute getSecurityScheme_Alg() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(9);
}
@@ -647,7 +688,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Token() {
+ public EAttribute getSecurityScheme_Format() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(10);
}
@@ -657,7 +698,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Refresh() {
+ public EAttribute getSecurityScheme_Identity() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(11);
}
@@ -667,7 +708,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Scopes() {
+ public EAttribute getSecurityScheme_Token() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(12);
}
@@ -677,7 +718,7 @@
* @generated
*/
@Override
- public EAttribute getSecurityScheme_Flow() {
+ public EAttribute getSecurityScheme_Refresh() {
return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(13);
}
@@ -687,6 +728,26 @@
* @generated
*/
@Override
+ public EAttribute getSecurityScheme_Scopes() {
+ return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(14);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getSecurityScheme_Flow() {
+ return (EAttribute)securitySchemeEClass.getEStructuralFeatures().get(15);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public EClass getLink() {
return linkEClass;
}
@@ -757,16 +818,6 @@
* @generated
*/
@Override
- public EReference getEventAffordance_Base_Signal() {
- return (EReference)eventAffordanceEClass.getEStructuralFeatures().get(0);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
public EReference getEventAffordance_Data() {
return (EReference)eventAffordanceEClass.getEStructuralFeatures().get(1);
}
@@ -797,6 +848,16 @@
* @generated
*/
@Override
+ public EReference getEventAffordance_Base_Reception() {
+ return (EReference)eventAffordanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public EClass getInteractionAffordance() {
return interactionAffordanceEClass;
}
@@ -807,8 +868,8 @@
* @generated
*/
@Override
- public EReference getInteractionAffordance_Forms() {
- return (EReference)interactionAffordanceEClass.getEStructuralFeatures().get(0);
+ public EAttribute getInteractionAffordance_Title() {
+ return (EAttribute)interactionAffordanceEClass.getEStructuralFeatures().get(0);
}
/**
@@ -817,8 +878,28 @@
* @generated
*/
@Override
- public EReference getInteractionAffordance_Type() {
- return (EReference)interactionAffordanceEClass.getEStructuralFeatures().get(1);
+ public EAttribute getInteractionAffordance_Description() {
+ return (EAttribute)interactionAffordanceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EReference getInteractionAffordance_Forms() {
+ return (EReference)interactionAffordanceEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EReference getInteractionAffordance_AType() {
+ return (EReference)interactionAffordanceEClass.getEStructuralFeatures().get(3);
}
/**
@@ -907,6 +988,26 @@
* @generated
*/
@Override
+ public EReference getForm_Security() {
+ return (EReference)formEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EReference getForm_Base_Comment() {
+ return (EReference)formEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public EClass getType() {
return typeEClass;
}
@@ -947,27 +1048,27 @@
* @generated
*/
@Override
+ public EAttribute getDataSchema_Title() {
+ return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDataSchema_Description() {
+ return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public EReference getDataSchema_Base_TypedElement() {
- return (EReference)dataSchemaEClass.getEStructuralFeatures().get(0);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public EReference getDataSchema_Enum() {
- return (EReference)dataSchemaEClass.getEStructuralFeatures().get(1);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public EReference getDataSchema_NumberInterval() {
return (EReference)dataSchemaEClass.getEStructuralFeatures().get(2);
}
@@ -977,8 +1078,8 @@
* @generated
*/
@Override
- public EReference getDataSchema_Required() {
- return (EReference)dataSchemaEClass.getEStructuralFeatures().get(3);
+ public EAttribute getDataSchema_Enum() {
+ return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(3);
}
/**
@@ -987,7 +1088,7 @@
* @generated
*/
@Override
- public EReference getDataSchema_Items() {
+ public EReference getDataSchema_Required() {
return (EReference)dataSchemaEClass.getEStructuralFeatures().get(4);
}
@@ -997,7 +1098,7 @@
* @generated
*/
@Override
- public EReference getDataSchema_Properties() {
+ public EReference getDataSchema_Items() {
return (EReference)dataSchemaEClass.getEStructuralFeatures().get(5);
}
@@ -1007,7 +1108,7 @@
* @generated
*/
@Override
- public EReference getDataSchema_Type() {
+ public EReference getDataSchema_Properties() {
return (EReference)dataSchemaEClass.getEStructuralFeatures().get(6);
}
@@ -1017,8 +1118,8 @@
* @generated
*/
@Override
- public EAttribute getDataSchema_WriteOnly() {
- return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(7);
+ public EReference getDataSchema_AType() {
+ return (EReference)dataSchemaEClass.getEStructuralFeatures().get(7);
}
/**
@@ -1027,7 +1128,7 @@
* @generated
*/
@Override
- public EAttribute getDataSchema_Format() {
+ public EAttribute getDataSchema_WriteOnly() {
return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(8);
}
@@ -1037,8 +1138,68 @@
* @generated
*/
@Override
+ public EAttribute getDataSchema_Format() {
+ return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public EReference getDataSchema_OneOf() {
- return (EReference)dataSchemaEClass.getEStructuralFeatures().get(9);
+ return (EReference)dataSchemaEClass.getEStructuralFeatures().get(10);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDataSchema_Type() {
+ return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(11);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDataSchema_Const() {
+ return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(12);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDataSchema_MinItems() {
+ return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(13);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDataSchema_MaxItems() {
+ return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(14);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getDataSchema_ReadOnly() {
+ return (EAttribute)dataSchemaEClass.getEStructuralFeatures().get(15);
}
/**
@@ -1058,16 +1219,6 @@
*/
@Override
public EReference getActionAffordance_Input() {
- return (EReference)actionAffordanceEClass.getEStructuralFeatures().get(0);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public EReference getActionAffordance_Output() {
return (EReference)actionAffordanceEClass.getEStructuralFeatures().get(1);
}
@@ -1077,7 +1228,7 @@
* @generated
*/
@Override
- public EReference getActionAffordance_Base_BehavioralFeature() {
+ public EReference getActionAffordance_Output() {
return (EReference)actionAffordanceEClass.getEStructuralFeatures().get(2);
}
@@ -1107,6 +1258,16 @@
* @generated
*/
@Override
+ public EReference getActionAffordance_Base_Operation() {
+ return (EReference)actionAffordanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public EClass getPropertyAffordance() {
return propertyAffordanceEClass;
}
@@ -1261,21 +1422,27 @@
// Create classes and their features
thingEClass = createEClass(THING);
+ createEAttribute(thingEClass, THING__TITLE);
+ createEAttribute(thingEClass, THING__DESCRIPTION);
createEAttribute(thingEClass, THING__BASE);
createEAttribute(thingEClass, THING__ID);
createEAttribute(thingEClass, THING__SUPPORT);
+ createEReference(thingEClass, THING__SECURITY);
createEReference(thingEClass, THING__SECURITY_DEFINITIONS);
createEReference(thingEClass, THING__LINKS);
createEReference(thingEClass, THING__EVENTS);
createEReference(thingEClass, THING__ACTIONS);
createEReference(thingEClass, THING__PROPERTIES);
createEAttribute(thingEClass, THING__VERSION);
- createEReference(thingEClass, THING__TYPE);
- createEReference(thingEClass, THING__CONTEXT);
+ createEReference(thingEClass, THING__ATYPE);
+ createEReference(thingEClass, THING__ACONTEXT);
createEReference(thingEClass, THING__FORMS);
+ createEReference(thingEClass, THING__BASE_CLASS);
securitySchemeEClass = createEClass(SECURITY_SCHEME);
createEReference(securitySchemeEClass, SECURITY_SCHEME__BASE_CLASSIFIER);
+ createEAttribute(securitySchemeEClass, SECURITY_SCHEME__TITLE);
+ createEAttribute(securitySchemeEClass, SECURITY_SCHEME__DESCRIPTION);
createEAttribute(securitySchemeEClass, SECURITY_SCHEME__SCHEME);
createEAttribute(securitySchemeEClass, SECURITY_SCHEME__PROXY);
createEAttribute(securitySchemeEClass, SECURITY_SCHEME__IN);
@@ -1298,14 +1465,16 @@
createEAttribute(linkEClass, LINK__ANCHOR);
eventAffordanceEClass = createEClass(EVENT_AFFORDANCE);
- createEReference(eventAffordanceEClass, EVENT_AFFORDANCE__BASE_SIGNAL);
+ createEReference(eventAffordanceEClass, EVENT_AFFORDANCE__BASE_RECEPTION);
createEReference(eventAffordanceEClass, EVENT_AFFORDANCE__DATA);
createEReference(eventAffordanceEClass, EVENT_AFFORDANCE__SUBSCRIPTION);
createEReference(eventAffordanceEClass, EVENT_AFFORDANCE__CANCELLATION);
interactionAffordanceEClass = createEClass(INTERACTION_AFFORDANCE);
+ createEAttribute(interactionAffordanceEClass, INTERACTION_AFFORDANCE__TITLE);
+ createEAttribute(interactionAffordanceEClass, INTERACTION_AFFORDANCE__DESCRIPTION);
createEReference(interactionAffordanceEClass, INTERACTION_AFFORDANCE__FORMS);
- createEReference(interactionAffordanceEClass, INTERACTION_AFFORDANCE__TYPE);
+ createEReference(interactionAffordanceEClass, INTERACTION_AFFORDANCE__ATYPE);
formEClass = createEClass(FORM);
createEAttribute(formEClass, FORM__OP);
@@ -1315,27 +1484,35 @@
createEAttribute(formEClass, FORM__SUB_PROTOCOL);
createEAttribute(formEClass, FORM__SCOPES);
createEAttribute(formEClass, FORM__RESPONSE);
+ createEReference(formEClass, FORM__SECURITY);
+ createEReference(formEClass, FORM__BASE_COMMENT);
typeEClass = createEClass(TYPE);
createEAttribute(typeEClass, TYPE__NAME);
createEReference(typeEClass, TYPE__BASE_TYPE);
dataSchemaEClass = createEClass(DATA_SCHEMA);
+ createEAttribute(dataSchemaEClass, DATA_SCHEMA__TITLE);
+ createEAttribute(dataSchemaEClass, DATA_SCHEMA__DESCRIPTION);
createEReference(dataSchemaEClass, DATA_SCHEMA__BASE_TYPED_ELEMENT);
- createEReference(dataSchemaEClass, DATA_SCHEMA__ENUM);
- createEReference(dataSchemaEClass, DATA_SCHEMA__NUMBER_INTERVAL);
+ createEAttribute(dataSchemaEClass, DATA_SCHEMA__ENUM);
createEReference(dataSchemaEClass, DATA_SCHEMA__REQUIRED);
createEReference(dataSchemaEClass, DATA_SCHEMA__ITEMS);
createEReference(dataSchemaEClass, DATA_SCHEMA__PROPERTIES);
- createEReference(dataSchemaEClass, DATA_SCHEMA__TYPE);
+ createEReference(dataSchemaEClass, DATA_SCHEMA__ATYPE);
createEAttribute(dataSchemaEClass, DATA_SCHEMA__WRITE_ONLY);
createEAttribute(dataSchemaEClass, DATA_SCHEMA__FORMAT);
createEReference(dataSchemaEClass, DATA_SCHEMA__ONE_OF);
+ createEAttribute(dataSchemaEClass, DATA_SCHEMA__TYPE);
+ createEAttribute(dataSchemaEClass, DATA_SCHEMA__CONST);
+ createEAttribute(dataSchemaEClass, DATA_SCHEMA__MIN_ITEMS);
+ createEAttribute(dataSchemaEClass, DATA_SCHEMA__MAX_ITEMS);
+ createEAttribute(dataSchemaEClass, DATA_SCHEMA__READ_ONLY);
actionAffordanceEClass = createEClass(ACTION_AFFORDANCE);
+ createEReference(actionAffordanceEClass, ACTION_AFFORDANCE__BASE_OPERATION);
createEReference(actionAffordanceEClass, ACTION_AFFORDANCE__INPUT);
createEReference(actionAffordanceEClass, ACTION_AFFORDANCE__OUTPUT);
- createEReference(actionAffordanceEClass, ACTION_AFFORDANCE__BASE_BEHAVIORAL_FEATURE);
createEAttribute(actionAffordanceEClass, ACTION_AFFORDANCE__SAFE);
createEAttribute(actionAffordanceEClass, ACTION_AFFORDANCE__IDEMPOTENT);
@@ -1381,39 +1558,41 @@
setNsURI(eNS_URI);
// Obtain other dependent packages
- ArtefactPackage theArtefactPackage = (ArtefactPackage)EPackage.Registry.INSTANCE.getEPackage(ArtefactPackage.eNS_URI);
TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
- StructurePackage theStructurePackage = (StructurePackage)EPackage.Registry.INSTANCE.getEPackage(StructurePackage.eNS_URI);
// Create type parameters
// Set bounds for type parameters
// Add supertypes to classes
- thingEClass.getESuperTypes().add(theArtefactPackage.getVirtualEntity());
eventAffordanceEClass.getESuperTypes().add(this.getInteractionAffordance());
- formEClass.getESuperTypes().add(theStructurePackage.getMetaValueSpecification());
actionAffordanceEClass.getESuperTypes().add(this.getInteractionAffordance());
propertyAffordanceEClass.getESuperTypes().add(this.getInteractionAffordance());
// Initialize classes and features; add operations and parameters
initEClass(thingEClass, Thing.class, "Thing", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getThing_Title(), theTypesPackage.getString(), "title", null, 1, 1, Thing.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getThing_Description(), theTypesPackage.getString(), "description", null, 1, 1, Thing.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
initEAttribute(getThing_Base(), theTypesPackage.getString(), "base", null, 0, 1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getThing_Id(), theTypesPackage.getString(), "id", null, 0, 1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getThing_Support(), theTypesPackage.getString(), "support", null, 0, 1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getThing_Security(), this.getSecurityScheme(), null, "security", null, 1, -1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getThing_SecurityDefinitions(), this.getSecurityScheme(), null, "securityDefinitions", null, 1, -1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getThing_Links(), this.getLink(), null, "links", null, 0, -1, Thing.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
- initEReference(getThing_Events(), this.getEventAffordance(), null, "events", null, 0, -1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getThing_Actions(), this.getActionAffordance(), null, "actions", null, 0, -1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getThing_Properties(), this.getPropertyAffordance(), null, "properties", null, 0, -1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getThing_Events(), this.getEventAffordance(), null, "events", null, 0, -1, Thing.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEReference(getThing_Actions(), this.getActionAffordance(), null, "actions", null, 0, -1, Thing.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEReference(getThing_Properties(), this.getPropertyAffordance(), null, "properties", null, 0, -1, Thing.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
initEAttribute(getThing_Version(), theTypesPackage.getString(), "version", null, 1, 1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getThing_Type(), this.getType(), null, "type", null, 0, -1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getThing_Context(), this.getContext(), null, "context", null, 0, -1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getThing_AType(), this.getType(), null, "aType", null, 0, -1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getThing_AContext(), this.getContext(), null, "aContext", null, 0, -1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getThing_Forms(), this.getForm(), null, "forms", null, 0, -1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getThing_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 0, 1, Thing.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(securitySchemeEClass, SecurityScheme.class, "SecurityScheme", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getSecurityScheme_Base_Classifier(), theUMLPackage.getClassifier(), null, "base_Classifier", null, 0, 1, SecurityScheme.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getSecurityScheme_Title(), theTypesPackage.getString(), "title", null, 1, 1, SecurityScheme.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getSecurityScheme_Description(), theTypesPackage.getString(), "description", null, 1, 1, SecurityScheme.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
initEAttribute(getSecurityScheme_Scheme(), this.getSecuritySchemeKind(), "scheme", null, 1, 1, SecurityScheme.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getSecurityScheme_Proxy(), theTypesPackage.getString(), "proxy", null, 0, 1, SecurityScheme.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getSecurityScheme_In(), this.getSecurityAuthenticationInformationLocationKind(), "in", "header", 1, 1, SecurityScheme.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
@@ -1436,14 +1615,16 @@
initEAttribute(getLink_Anchor(), theTypesPackage.getString(), "anchor", null, 1, 1, Link.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(eventAffordanceEClass, EventAffordance.class, "EventAffordance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getEventAffordance_Base_Signal(), theUMLPackage.getSignal(), null, "base_Signal", null, 0, 1, EventAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getEventAffordance_Base_Reception(), theUMLPackage.getReception(), null, "base_Reception", null, 0, 1, EventAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getEventAffordance_Data(), this.getDataSchema(), null, "data", null, 0, 1, EventAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getEventAffordance_Subscription(), this.getDataSchema(), null, "subscription", null, 0, 1, EventAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getEventAffordance_Cancellation(), this.getDataSchema(), null, "cancellation", null, 0, 1, EventAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(interactionAffordanceEClass, InteractionAffordance.class, "InteractionAffordance", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getInteractionAffordance_Title(), theTypesPackage.getString(), "title", null, 1, 1, InteractionAffordance.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getInteractionAffordance_Description(), theTypesPackage.getString(), "description", null, 1, 1, InteractionAffordance.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
initEReference(getInteractionAffordance_Forms(), this.getForm(), null, "forms", null, 1, -1, InteractionAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getInteractionAffordance_Type(), this.getType(), null, "type", null, 0, -1, InteractionAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getInteractionAffordance_AType(), this.getType(), null, "aType", null, 0, -1, InteractionAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(formEClass, Form.class, "Form", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getForm_Op(), this.getOpKind(), "op", "readproperty", 1, -1, Form.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
@@ -1451,29 +1632,37 @@
initEAttribute(getForm_ContentType(), theTypesPackage.getString(), "contentType", "application/json", 1, 1, Form.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getForm_ContentCoding(), theTypesPackage.getString(), "contentCoding", null, 0, 1, Form.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getForm_SubProtocol(), this.getSubProtocolKind(), "subProtocol", null, 0, 1, Form.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEAttribute(getForm_Scopes(), theTypesPackage.getString(), "scopes", null, 0, -1, Form.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getForm_Scopes(), theTypesPackage.getString(), "scopes", null, 0, -1, Form.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getForm_Response(), theTypesPackage.getString(), "response", "application/json", 0, 1, Form.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getForm_Security(), this.getSecurityScheme(), null, "security", null, 1, -1, Form.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getForm_Base_Comment(), theUMLPackage.getComment(), null, "base_Comment", null, 0, 1, Form.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(typeEClass, Type.class, "Type", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getType_Name(), theTypesPackage.getString(), "name", null, 1, 1, Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getType_Base_Type(), theUMLPackage.getType(), null, "base_Type", null, 0, 1, Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(dataSchemaEClass, DataSchema.class, "DataSchema", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDataSchema_Title(), theTypesPackage.getString(), "title", null, 1, 1, DataSchema.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getDataSchema_Description(), theTypesPackage.getString(), "description", null, 1, 1, DataSchema.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
initEReference(getDataSchema_Base_TypedElement(), theUMLPackage.getTypedElement(), null, "base_TypedElement", null, 0, 1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getDataSchema_Enum(), theStructurePackage.getMetaValueSpecification(), null, "enum", null, 0, -1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getDataSchema_NumberInterval(), theUMLPackage.getInterval(), null, "numberInterval", null, 1, 1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getDataSchema_Enum(), theTypesPackage.getString(), "enum", null, 0, -1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getDataSchema_Required(), theUMLPackage.getProperty(), null, "required", null, 0, -1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getDataSchema_Items(), this.getDataSchema(), null, "items", null, 0, -1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getDataSchema_Properties(), this.getDataSchema(), null, "properties", null, 0, -1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getDataSchema_Type(), this.getType(), null, "type", null, 0, -1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getDataSchema_AType(), this.getType(), null, "aType", null, 0, -1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getDataSchema_WriteOnly(), theTypesPackage.getBoolean(), "writeOnly", "false", 1, 1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getDataSchema_Format(), theTypesPackage.getString(), "format", null, 0, 1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getDataSchema_OneOf(), this.getDataSchema(), null, "oneOf", null, 0, -1, DataSchema.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getDataSchema_Type(), theTypesPackage.getString(), "type", null, 1, 1, DataSchema.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getDataSchema_Const(), theTypesPackage.getString(), "const", null, 1, 1, DataSchema.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getDataSchema_MinItems(), theTypesPackage.getInteger(), "minItems", null, 1, 1, DataSchema.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getDataSchema_MaxItems(), theTypesPackage.getInteger(), "maxItems", null, 1, 1, DataSchema.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getDataSchema_ReadOnly(), theTypesPackage.getBoolean(), "readOnly", null, 1, 1, DataSchema.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
initEClass(actionAffordanceEClass, ActionAffordance.class, "ActionAffordance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getActionAffordance_Input(), this.getDataSchema(), null, "input", null, 0, 1, ActionAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getActionAffordance_Output(), this.getDataSchema(), null, "output", null, 0, 1, ActionAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getActionAffordance_Base_BehavioralFeature(), theUMLPackage.getBehavioralFeature(), null, "base_BehavioralFeature", null, 0, 1, ActionAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getActionAffordance_Base_Operation(), theUMLPackage.getOperation(), null, "base_Operation", null, 0, 1, ActionAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getActionAffordance_Input(), this.getDataSchema(), null, "input", null, 0, 1, ActionAffordance.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+ initEReference(getActionAffordance_Output(), this.getDataSchema(), null, "output", null, 0, 1, ActionAffordance.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
initEAttribute(getActionAffordance_Safe(), theTypesPackage.getBoolean(), "safe", null, 1, 1, ActionAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getActionAffordance_Idempotent(), theTypesPackage.getBoolean(), "idempotent", null, 1, 1, ActionAffordance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/util/WoTAdapterFactory.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/util/WoTAdapterFactory.java
index 18124c2..f3e8b53 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/util/WoTAdapterFactory.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/util/WoTAdapterFactory.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.util;
@@ -19,12 +20,6 @@
import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
import org.eclipse.emf.ecore.EObject;
-
-import org.eclipse.papyrus.iotml.software.artefact.DigitalArtefact;
-import org.eclipse.papyrus.iotml.software.artefact.VirtualEntity;
-
-import org.eclipse.papyrus.iotml.software.core.structure.MetaValueSpecification;
-
import org.eclipse.papyrus.iotml.wot.*;
/**
@@ -128,18 +123,6 @@
return createContextAdapter();
}
@Override
- public Adapter caseDigitalArtefact(DigitalArtefact object) {
- return createDigitalArtefactAdapter();
- }
- @Override
- public Adapter caseVirtualEntity(VirtualEntity object) {
- return createVirtualEntityAdapter();
- }
- @Override
- public Adapter caseMetaValueSpecification(MetaValueSpecification object) {
- return createMetaValueSpecificationAdapter();
- }
- @Override
public Adapter defaultCase(EObject object) {
return createEObjectAdapter();
}
@@ -314,48 +297,6 @@
}
/**
- * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.software.artefact.DigitalArtefact <em>Digital Artefact</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.eclipse.papyrus.iotml.software.artefact.DigitalArtefact
- * @generated
- */
- public Adapter createDigitalArtefactAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.software.artefact.VirtualEntity <em>Virtual Entity</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.eclipse.papyrus.iotml.software.artefact.VirtualEntity
- * @generated
- */
- public Adapter createVirtualEntityAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.iotml.software.core.structure.MetaValueSpecification <em>Meta Value Specification</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.eclipse.papyrus.iotml.software.core.structure.MetaValueSpecification
- * @generated
- */
- public Adapter createMetaValueSpecificationAdapter() {
- return null;
- }
-
- /**
* Creates a new adapter for the default case.
* <!-- begin-user-doc -->
* This default implementation returns null.
diff --git a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/util/WoTSwitch.java b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/util/WoTSwitch.java
index 54739b9..09a2417 100644
--- a/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/util/WoTSwitch.java
+++ b/org.eclipse.papyrus.iotml.profile/src-gen/org/eclipse/papyrus/iotml/wot/util/WoTSwitch.java
@@ -9,6 +9,7 @@
* Contributors:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
+ * Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot.util;
@@ -17,12 +18,6 @@
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.util.Switch;
-
-import org.eclipse.papyrus.iotml.software.artefact.DigitalArtefact;
-import org.eclipse.papyrus.iotml.software.artefact.VirtualEntity;
-
-import org.eclipse.papyrus.iotml.software.core.structure.MetaValueSpecification;
-
import org.eclipse.papyrus.iotml.wot.*;
/**
@@ -85,8 +80,6 @@
case WoTPackage.THING: {
Thing thing = (Thing)theEObject;
T result = caseThing(thing);
- if (result == null) result = caseVirtualEntity(thing);
- if (result == null) result = caseDigitalArtefact(thing);
if (result == null) result = defaultCase(theEObject);
return result;
}
@@ -118,7 +111,6 @@
case WoTPackage.FORM: {
Form form = (Form)theEObject;
T result = caseForm(form);
- if (result == null) result = caseMetaValueSpecification(form);
if (result == null) result = defaultCase(theEObject);
return result;
}
@@ -324,51 +316,6 @@
}
/**
- * Returns the result of interpreting the object as an instance of '<em>Digital Artefact</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>Digital Artefact</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseDigitalArtefact(DigitalArtefact object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Virtual Entity</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>Virtual Entity</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseVirtualEntity(VirtualEntity object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Meta Value Specification</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>Meta Value Specification</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseMetaValueSpecification(MetaValueSpecification object) {
- return null;
- }
-
- /**
* Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
diff --git a/org.eclipse.papyrus.iotml.targetplatform.photon/org.eclipse.papyrus.iotml.targetplatform.photon.target b/org.eclipse.papyrus.iotml.targetplatform.photon/org.eclipse.papyrus.iotml.targetplatform.photon.target
index 7805a64..92b42d2 100644
--- a/org.eclipse.papyrus.iotml.targetplatform.photon/org.eclipse.papyrus.iotml.targetplatform.photon.target
+++ b/org.eclipse.papyrus.iotml.targetplatform.photon/org.eclipse.papyrus.iotml.targetplatform.photon.target
@@ -82,5 +82,15 @@
<unit id="org.eclipse.papyrus.toolsmiths.feature.feature.group" version="0.0.0"/>
<repository id="papyrus-toolsmith" location="http://download.eclipse.org/modeling/mdt/papyrus/updates/releases/2019-03/"/>
</location>
+ <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+ <unit id="com.fasterxml.jackson.core.jackson-annotations" version="0.0.0"/>
+ <unit id="com.fasterxml.jackson.core.jackson-core" version="0.0.0"/>
+ <unit id="com.fasterxml.jackson.core.jackson-databind" version="0.0.0"/>
+ <repository id="orbit" location="https://download.eclipse.org/tools/orbit/downloads/drops/R20200224183213/repository/"/>
+ </location>
+ <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+ <unit id="org.eclipse.papyrus.designer.languages.common.feature.feature.group" version="0.0.0"/>
+ <repository id="swdesigner" location="https://ci.eclipse.org/papyrus/job/papyrus-designer-photon/lastSuccessfulBuild/artifact/releng/org.eclipse.papyrus.designer.p2/target/repository/"/>
+ </location>
</locations>
</target>
diff --git a/releng/org.eclipse.papyrus.iotml.p2/category.xml b/releng/org.eclipse.papyrus.iotml.p2/category.xml
index 021e8f5..404b2fa 100644
--- a/releng/org.eclipse.papyrus.iotml.p2/category.xml
+++ b/releng/org.eclipse.papyrus.iotml.p2/category.xml
@@ -1,9 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<site>
<feature url="features/org.eclipse.papyrus.iotml.feature_1.0.0.qualifier.jar" id="org.eclipse.papyrus.iotml.feature" version="1.0.0.qualifier">
- <category name="org.eclipse.papyrus.category"/>
+ <category name="org.eclipse.papyrus.iotml.category"/>
</feature>
- <category-def name="org.eclipse.papyrus.category" label="Papyrus IoTML Category">
+ <feature url="features/org.eclipse.papyrus.iotml.wot.td.feature_1.0.0.qualifier.jar" id="org.eclipse.papyrus.iotml.wot.td.feature" version="1.0.0.qualifier">
+ <category name="org.eclipse.papyrus.iotml.category"/>
+ </feature>
+ <category-def name="org.eclipse.papyrus.iotml.category" label="Papyrus IoTML Category">
<description>
Papyrus IoTML Category
</description>
diff --git a/releng/org.eclipse.papyrus.iotml.product/category.xml b/releng/org.eclipse.papyrus.iotml.product/category.xml
index 9744b8d..2a5501b 100644
--- a/releng/org.eclipse.papyrus.iotml.product/category.xml
+++ b/releng/org.eclipse.papyrus.iotml.product/category.xml
@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<site>
<feature url="features/org.eclipse.papyrus.iotml.feature_1.0.0.qualifier.jar" id="org.eclipse.papyrus.iotml.feature" version="1.0.0.qualifier"/>
+ <feature url="features/org.eclipse.papyrus.iotml.wot.td.feature_1.0.0.qualifier.jar" id="org.eclipse.papyrus.iotml.wot.td.feature" version="1.0.0.qualifier"/>
</site>
diff --git a/releng/org.eclipse.papyrus.iotml.product/papyrusIotml.product b/releng/org.eclipse.papyrus.iotml.product/papyrusIotml.product
index d4a3d30..70b800b 100644
--- a/releng/org.eclipse.papyrus.iotml.product/papyrusIotml.product
+++ b/releng/org.eclipse.papyrus.iotml.product/papyrusIotml.product
@@ -193,6 +193,7 @@
<feature id="org.eclipse.rcp"/>
<feature id="org.eclipse.papyrus.iotml.feature" installMode="root"/>
<feature id="org.eclipse.papyrus.iotml.rcp.feature" installMode="root"/>
+ <feature id="org.eclipse.papyrus.iotml.wot.td.feature" installMode="root"/>
<feature id="org.eclipse.emf.compare"/>
<feature id="org.eclipse.emf.compare.diagram.gmf"/>
<feature id="org.eclipse.emf.compare.egit"/>