Browse Source

Updated model_overwrite: only the megamodelling version remains, and explicitly takes the required metamodel

Yentl Van Tendeloo 7 years ago
parent
commit
42fb0e82cd

+ 17 - 17
integration/test_powerwindow.py

@@ -66,22 +66,22 @@ class TestPowerWindow(unittest.TestCase):
         called = 0
         nr_of_operations = 6
 
-        def get_function(filename):
+        def get_function(filename, metamodel_name):
             def func(model):
                 global called
                 if called > nr_of_operations:
                     raise Exception("Seemingly called some operation twice!")
                 else:
                     called += 1
-                model_overwrite(model, open(filename, "r").read())
+                model_overwrite(model, metamodel_name, open(filename, "r").read())
             return func
 
-        cb_req = get_function("models/requirements_model.mvc")
-        cb_plant = get_function("models/plant_model.mvc")
-        cb_env = get_function("models/environment_model.mvc")
-        cb_ctrl = get_function("models/control_model.mvc")
-        cb_query = get_function("models/query_model.mvc")
-        cb_arch = get_function("models/architecture_model.mvc")
+        cb_req = get_function("models/requirements_model.mvc", "formalisms/Requirements")
+        cb_plant = get_function("models/plant_model.mvc", "formalisms/PW_Plant")
+        cb_env = get_function("models/environment_model.mvc", "formalisms/PW_Environment")
+        cb_ctrl = get_function("models/control_model.mvc", "formalisms/PW_Control")
+        cb_query = get_function("models/query_model.mvc", "formalisms/Query")
+        cb_arch = get_function("models/architecture_model.mvc", "formalisms/Architecture")
 
         callbacks = {
                 "models/revise_req": cb_req,
@@ -157,7 +157,7 @@ class TestPowerWindow(unittest.TestCase):
         called = 0
         executed = set([])
 
-        def get_function(filename, fixed=None):
+        def get_function(filename, metamodel_name, fixed=None):
             def func(model):
                 global called
                 if called > len(callbacks) * 2:
@@ -165,17 +165,17 @@ class TestPowerWindow(unittest.TestCase):
                 called += 1
                 if filename not in executed or fixed is None:
                     executed.add(filename)
-                    model_overwrite(model, open(filename, "r").read())
+                    model_overwrite(model, metamodel_name, open(filename, "r").read())
                 else:
-                    model_overwrite(model, open(fixed, "r").read())
+                    model_overwrite(model, metamodel_name, open(fixed, "r").read())
             return func
 
-        cb_req = get_function("models/requirements_model.mvc")
-        cb_plant = get_function("models/plant_model.mvc")
-        cb_env = get_function("models/environment_model.mvc")
-        cb_ctrl = get_function("models/control_model_wrong.mvc", "models/control_model.mvc")
-        cb_query = get_function("models/query_model.mvc")
-        cb_arch = get_function("models/architecture_model.mvc")
+        cb_req = get_function("models/requirements_model.mvc", "formalisms/Requirements")
+        cb_plant = get_function("models/plant_model.mvc", "formalisms/PW_Plant")
+        cb_env = get_function("models/environment_model.mvc", "formalisms/PW_Environment")
+        cb_ctrl = get_function("models/control_model_wrong.mvc", "formalisms/PW_Control", fixed="models/control_model.mvc")
+        cb_query = get_function("models/query_model.mvc", "formalisms/Query")
+        cb_arch = get_function("models/architecture_model.mvc", "formalisms/Architecture")
 
         import log_output
         error_path = []

+ 1 - 1
models/upload_models.py

@@ -51,6 +51,7 @@ def add_trace_CBD(model):
 
 transformation_add_AL({"abstract": "formalisms/CBD/Design_MM", "rendered": "formalisms/MM_render/graphical"}, {"rendered": "formalisms/MM_render/graphical"}, "models/CBD/render_graphical", open("models/CBD_mapper.alc", 'r').read(), add_trace_CBD)
 
+"""
 def modify_model(model):
     if len(all_instances(model, "Design/ProbeBlock")) > 2:
         import time
@@ -70,7 +71,6 @@ def idle(model):
 #process_execute("models/live_modelling_CBD", {"design_model": "models/CBD_spring"}, {"models/CBD/edit": modify_model})
 #process_execute("models/live_modelling_CBD", {"design_model": "models/CBD_spring"}, {"models/CBD/edit": idle})
 
-"""
 model_add("formalisms/PW_Plant", "formalisms/SimpleClassDiagrams", open("models/plant_PW.mvc", 'r').read())
 model_add("models/plant", "formalisms/PW_Plant", open("models/plant_model.mvc", 'r').read().replace("PW_Plant/", ""))
 model_add("formalisms/Requirements", "formalisms/SimpleClassDiagrams", open("models/requirements.mvc", 'r').read())

+ 5 - 34
wrappers/classes/modelverse.xml

@@ -412,37 +412,11 @@
                         </transition>
                     </state>
 
-                    <state id="model_upload" initial="send_metadata">
-                        <state id="send_metadata">
-                            <onentry>
-                                <raise event="request">
-                                    <parameter expr="['upload']"/>
-                                </raise>
-                            </onentry>
-
-                            <transition cond="self.expect_response('Waiting for model constructors...')" target="../send_model"/>
-                        </state>
-
-                        <state id="send_model">
-                            <onentry>
-                                <raise event="request">
-                                    <parameter expr="self.parameters[1]"/>
-                                </raise>
-                            </onentry>
-
-                            <transition cond="self.expect_response('Success')" target="../../../wait_for_action/history">
-                                <raise event="result">
-                                    <parameter expr="None"/>
-                                </raise>
-                            </transition>
-                        </state>
-                    </state>
-
                     <state id="model_overwrite" initial="send_metadata">
                         <state id="send_metadata">
                             <onentry>
                                 <raise event="request">
-                                    <parameter expr="['model_overwrite', self.parameters[0], self.registered_metamodel[self.parameters[0]]]"/>
+                                    <parameter expr="['model_overwrite', self.parameters[0], self.parameters[1]]"/>
                                 </raise>
                             </onentry>
 
@@ -452,7 +426,7 @@
                         <state id="send_model">
                             <onentry>
                                 <raise event="request">
-                                    <parameter expr="self.parameters[1]"/>
+                                    <parameter expr="self.parameters[2]"/>
                                 </raise>
                             </onentry>
 
@@ -460,6 +434,9 @@
                                 <raise event="result">
                                     <parameter expr="None"/>
                                 </raise>
+                                <script>
+                                    self.registered_metamodel[self.parameters[0]] = self.parameters[1]
+                                </script>
                             </transition>
                         </state>
                     </state>
@@ -1785,12 +1762,6 @@
                                 </script>
                             </transition>
 
-                            <transition cond="self.expect_action(self.context, 'model_overwrite')" target="../../../operations/model_upload">
-                                <script>
-                                    self.load_action(self.context)
-                                </script>
-                            </transition>
-
                             <transition cond="self.expect_action(self.context, 'attr_assign_code')" target="../../../operations/attr_assign_code">
                                 <script>
                                     self.load_action(self.context)

+ 2 - 2
wrappers/modelverse.py

@@ -214,8 +214,8 @@ def verify(model_name, metamodel_name):
     INPUT("verify", None, [model_name, metamodel_name])
     return OUTPUT()
 
-def model_overwrite(model_name, new_model, context=None):
-    INPUT("model_overwrite", context, [model_name, new_model])
+def model_overwrite(model_name, metamodel_name, new_model):
+    INPUT("model_overwrite", context, [model_name, metamodel_name, new_model])
     return OUTPUT()
 
 def disconnect():

+ 123 - 176
wrappers/modelverse_SCCD.py

@@ -1,7 +1,7 @@
 """
 Generated by Statechart compiler by Glenn De Jonghe, Joeri Exelmans, Simon Van Mierlo, and Yentl Van Tendeloo (for the inspiration)
 
-Date:   Fri Nov 17 16:03:01 2017
+Date:   Wed Nov 22 11:22:26 2017
 
 Model author: Yentl Van Tendeloo
 Model name:   MvK Server
@@ -212,354 +212,343 @@ class Modelverse(RuntimeClassBase):
         # state /initialized/behaviour/operations/alter_context
         self.states["/initialized/behaviour/operations/alter_context"] = State(26, "/initialized/behaviour/operations/alter_context", self)
         
-        # state /initialized/behaviour/operations/model_upload
-        self.states["/initialized/behaviour/operations/model_upload"] = State(27, "/initialized/behaviour/operations/model_upload", self)
-        
-        # state /initialized/behaviour/operations/model_upload/send_metadata
-        self.states["/initialized/behaviour/operations/model_upload/send_metadata"] = State(28, "/initialized/behaviour/operations/model_upload/send_metadata", self)
-        self.states["/initialized/behaviour/operations/model_upload/send_metadata"].setEnter(self._initialized_behaviour_operations_model_upload_send_metadata_enter)
-        
-        # state /initialized/behaviour/operations/model_upload/send_model
-        self.states["/initialized/behaviour/operations/model_upload/send_model"] = State(29, "/initialized/behaviour/operations/model_upload/send_model", self)
-        self.states["/initialized/behaviour/operations/model_upload/send_model"].setEnter(self._initialized_behaviour_operations_model_upload_send_model_enter)
-        
         # state /initialized/behaviour/operations/model_overwrite
-        self.states["/initialized/behaviour/operations/model_overwrite"] = State(30, "/initialized/behaviour/operations/model_overwrite", self)
+        self.states["/initialized/behaviour/operations/model_overwrite"] = State(27, "/initialized/behaviour/operations/model_overwrite", self)
         
         # state /initialized/behaviour/operations/model_overwrite/send_metadata
-        self.states["/initialized/behaviour/operations/model_overwrite/send_metadata"] = State(31, "/initialized/behaviour/operations/model_overwrite/send_metadata", self)
+        self.states["/initialized/behaviour/operations/model_overwrite/send_metadata"] = State(28, "/initialized/behaviour/operations/model_overwrite/send_metadata", self)
         self.states["/initialized/behaviour/operations/model_overwrite/send_metadata"].setEnter(self._initialized_behaviour_operations_model_overwrite_send_metadata_enter)
         
         # state /initialized/behaviour/operations/model_overwrite/send_model
-        self.states["/initialized/behaviour/operations/model_overwrite/send_model"] = State(32, "/initialized/behaviour/operations/model_overwrite/send_model", self)
+        self.states["/initialized/behaviour/operations/model_overwrite/send_model"] = State(29, "/initialized/behaviour/operations/model_overwrite/send_model", self)
         self.states["/initialized/behaviour/operations/model_overwrite/send_model"].setEnter(self._initialized_behaviour_operations_model_overwrite_send_model_enter)
         
         # state /initialized/behaviour/operations/disconnect
-        self.states["/initialized/behaviour/operations/disconnect"] = State(33, "/initialized/behaviour/operations/disconnect", self)
+        self.states["/initialized/behaviour/operations/disconnect"] = State(30, "/initialized/behaviour/operations/disconnect", self)
         self.states["/initialized/behaviour/operations/disconnect"].setEnter(self._initialized_behaviour_operations_disconnect_enter)
         
         # state /initialized/behaviour/operations/user_logout
-        self.states["/initialized/behaviour/operations/user_logout"] = State(34, "/initialized/behaviour/operations/user_logout", self)
+        self.states["/initialized/behaviour/operations/user_logout"] = State(31, "/initialized/behaviour/operations/user_logout", self)
         self.states["/initialized/behaviour/operations/user_logout"].setEnter(self._initialized_behaviour_operations_user_logout_enter)
         
         # state /initialized/behaviour/operations/user_delete
-        self.states["/initialized/behaviour/operations/user_delete"] = State(35, "/initialized/behaviour/operations/user_delete", self)
+        self.states["/initialized/behaviour/operations/user_delete"] = State(32, "/initialized/behaviour/operations/user_delete", self)
         self.states["/initialized/behaviour/operations/user_delete"].setEnter(self._initialized_behaviour_operations_user_delete_enter)
         
         # state /initialized/behaviour/operations/model_render
-        self.states["/initialized/behaviour/operations/model_render"] = State(36, "/initialized/behaviour/operations/model_render", self)
+        self.states["/initialized/behaviour/operations/model_render"] = State(33, "/initialized/behaviour/operations/model_render", self)
         self.states["/initialized/behaviour/operations/model_render"].setEnter(self._initialized_behaviour_operations_model_render_enter)
         
         # state /initialized/behaviour/operations/model_rendered
-        self.states["/initialized/behaviour/operations/model_rendered"] = State(37, "/initialized/behaviour/operations/model_rendered", self)
+        self.states["/initialized/behaviour/operations/model_rendered"] = State(34, "/initialized/behaviour/operations/model_rendered", self)
         self.states["/initialized/behaviour/operations/model_rendered"].setEnter(self._initialized_behaviour_operations_model_rendered_enter)
         
         # state /initialized/behaviour/operations/transformation_between
-        self.states["/initialized/behaviour/operations/transformation_between"] = State(38, "/initialized/behaviour/operations/transformation_between", self)
+        self.states["/initialized/behaviour/operations/transformation_between"] = State(35, "/initialized/behaviour/operations/transformation_between", self)
         self.states["/initialized/behaviour/operations/transformation_between"].setEnter(self._initialized_behaviour_operations_transformation_between_enter)
         
         # state /initialized/behaviour/operations/transformation_signature
-        self.states["/initialized/behaviour/operations/transformation_signature"] = State(39, "/initialized/behaviour/operations/transformation_signature", self)
+        self.states["/initialized/behaviour/operations/transformation_signature"] = State(36, "/initialized/behaviour/operations/transformation_signature", self)
         self.states["/initialized/behaviour/operations/transformation_signature"].setEnter(self._initialized_behaviour_operations_transformation_signature_enter)
         
         # state /initialized/behaviour/operations/process_signature
-        self.states["/initialized/behaviour/operations/process_signature"] = State(40, "/initialized/behaviour/operations/process_signature", self)
+        self.states["/initialized/behaviour/operations/process_signature"] = State(37, "/initialized/behaviour/operations/process_signature", self)
         self.states["/initialized/behaviour/operations/process_signature"].setEnter(self._initialized_behaviour_operations_process_signature_enter)
         
         # state /initialized/behaviour/operations/store_on_scripted
-        self.states["/initialized/behaviour/operations/store_on_scripted"] = State(41, "/initialized/behaviour/operations/store_on_scripted", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted"] = State(38, "/initialized/behaviour/operations/store_on_scripted", self)
         
         # state /initialized/behaviour/operations/store_on_scripted/transformation_add
-        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add"] = State(42, "/initialized/behaviour/operations/store_on_scripted/transformation_add", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add"] = State(39, "/initialized/behaviour/operations/store_on_scripted/transformation_add", self)
         
         # state /initialized/behaviour/operations/store_on_scripted/transformation_add/send_metadata
-        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add/send_metadata"] = State(43, "/initialized/behaviour/operations/store_on_scripted/transformation_add/send_metadata", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add/send_metadata"] = State(40, "/initialized/behaviour/operations/store_on_scripted/transformation_add/send_metadata", self)
         self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add/send_metadata"].setEnter(self._initialized_behaviour_operations_store_on_scripted_transformation_add_send_metadata_enter)
         
         # state /initialized/behaviour/operations/store_on_scripted/transformation_add/wait_for_user
-        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add/wait_for_user"] = State(44, "/initialized/behaviour/operations/store_on_scripted/transformation_add/wait_for_user", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add/wait_for_user"] = State(41, "/initialized/behaviour/operations/store_on_scripted/transformation_add/wait_for_user", self)
         
         # state /initialized/behaviour/operations/store_on_scripted/transformation_add/upload_changes
-        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add/upload_changes"] = State(45, "/initialized/behaviour/operations/store_on_scripted/transformation_add/upload_changes", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add/upload_changes"] = State(42, "/initialized/behaviour/operations/store_on_scripted/transformation_add/upload_changes", self)
         
         # state /initialized/behaviour/operations/store_on_scripted/transformation_execute
-        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_execute"] = State(46, "/initialized/behaviour/operations/store_on_scripted/transformation_execute", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_execute"] = State(43, "/initialized/behaviour/operations/store_on_scripted/transformation_execute", self)
         
         # state /initialized/behaviour/operations/store_on_scripted/transformation_execute/send_operation
-        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_execute/send_operation"] = State(47, "/initialized/behaviour/operations/store_on_scripted/transformation_execute/send_operation", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_execute/send_operation"] = State(44, "/initialized/behaviour/operations/store_on_scripted/transformation_execute/send_operation", self)
         self.states["/initialized/behaviour/operations/store_on_scripted/transformation_execute/send_operation"].setEnter(self._initialized_behaviour_operations_store_on_scripted_transformation_execute_send_operation_enter)
         
         # state /initialized/behaviour/operations/store_on_scripted/transformation_execute/waiting
-        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_execute/waiting"] = State(48, "/initialized/behaviour/operations/store_on_scripted/transformation_execute/waiting", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/transformation_execute/waiting"] = State(45, "/initialized/behaviour/operations/store_on_scripted/transformation_execute/waiting", self)
         
         # state /initialized/behaviour/operations/store_on_scripted/process_execute
-        self.states["/initialized/behaviour/operations/store_on_scripted/process_execute"] = State(49, "/initialized/behaviour/operations/store_on_scripted/process_execute", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/process_execute"] = State(46, "/initialized/behaviour/operations/store_on_scripted/process_execute", self)
         
         # state /initialized/behaviour/operations/store_on_scripted/process_execute/init
-        self.states["/initialized/behaviour/operations/store_on_scripted/process_execute/init"] = State(50, "/initialized/behaviour/operations/store_on_scripted/process_execute/init", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/process_execute/init"] = State(47, "/initialized/behaviour/operations/store_on_scripted/process_execute/init", self)
         self.states["/initialized/behaviour/operations/store_on_scripted/process_execute/init"].setEnter(self._initialized_behaviour_operations_store_on_scripted_process_execute_init_enter)
         
         # state /initialized/behaviour/operations/store_on_scripted/process_execute/executing
-        self.states["/initialized/behaviour/operations/store_on_scripted/process_execute/executing"] = State(51, "/initialized/behaviour/operations/store_on_scripted/process_execute/executing", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/process_execute/executing"] = State(48, "/initialized/behaviour/operations/store_on_scripted/process_execute/executing", self)
         
         # state /initialized/behaviour/operations/store_on_scripted/history
-        self.states["/initialized/behaviour/operations/store_on_scripted/history"] = DeepHistoryState(52, "/initialized/behaviour/operations/store_on_scripted/history", self)
+        self.states["/initialized/behaviour/operations/store_on_scripted/history"] = DeepHistoryState(49, "/initialized/behaviour/operations/store_on_scripted/history", self)
         
         # state /initialized/behaviour/operations/permission_modify
-        self.states["/initialized/behaviour/operations/permission_modify"] = State(53, "/initialized/behaviour/operations/permission_modify", self)
+        self.states["/initialized/behaviour/operations/permission_modify"] = State(50, "/initialized/behaviour/operations/permission_modify", self)
         self.states["/initialized/behaviour/operations/permission_modify"].setEnter(self._initialized_behaviour_operations_permission_modify_enter)
         
         # state /initialized/behaviour/operations/permission_owner
-        self.states["/initialized/behaviour/operations/permission_owner"] = State(54, "/initialized/behaviour/operations/permission_owner", self)
+        self.states["/initialized/behaviour/operations/permission_owner"] = State(51, "/initialized/behaviour/operations/permission_owner", self)
         self.states["/initialized/behaviour/operations/permission_owner"].setEnter(self._initialized_behaviour_operations_permission_owner_enter)
         
         # state /initialized/behaviour/operations/permission_group
-        self.states["/initialized/behaviour/operations/permission_group"] = State(55, "/initialized/behaviour/operations/permission_group", self)
+        self.states["/initialized/behaviour/operations/permission_group"] = State(52, "/initialized/behaviour/operations/permission_group", self)
         self.states["/initialized/behaviour/operations/permission_group"].setEnter(self._initialized_behaviour_operations_permission_group_enter)
         
         # state /initialized/behaviour/operations/group_create
-        self.states["/initialized/behaviour/operations/group_create"] = State(56, "/initialized/behaviour/operations/group_create", self)
+        self.states["/initialized/behaviour/operations/group_create"] = State(53, "/initialized/behaviour/operations/group_create", self)
         self.states["/initialized/behaviour/operations/group_create"].setEnter(self._initialized_behaviour_operations_group_create_enter)
         
         # state /initialized/behaviour/operations/group_delete
-        self.states["/initialized/behaviour/operations/group_delete"] = State(57, "/initialized/behaviour/operations/group_delete", self)
+        self.states["/initialized/behaviour/operations/group_delete"] = State(54, "/initialized/behaviour/operations/group_delete", self)
         self.states["/initialized/behaviour/operations/group_delete"].setEnter(self._initialized_behaviour_operations_group_delete_enter)
         
         # state /initialized/behaviour/operations/group_owner_add
-        self.states["/initialized/behaviour/operations/group_owner_add"] = State(58, "/initialized/behaviour/operations/group_owner_add", self)
+        self.states["/initialized/behaviour/operations/group_owner_add"] = State(55, "/initialized/behaviour/operations/group_owner_add", self)
         self.states["/initialized/behaviour/operations/group_owner_add"].setEnter(self._initialized_behaviour_operations_group_owner_add_enter)
         
         # state /initialized/behaviour/operations/group_owner_delete
-        self.states["/initialized/behaviour/operations/group_owner_delete"] = State(59, "/initialized/behaviour/operations/group_owner_delete", self)
+        self.states["/initialized/behaviour/operations/group_owner_delete"] = State(56, "/initialized/behaviour/operations/group_owner_delete", self)
         self.states["/initialized/behaviour/operations/group_owner_delete"].setEnter(self._initialized_behaviour_operations_group_owner_delete_enter)
         
         # state /initialized/behaviour/operations/group_join
-        self.states["/initialized/behaviour/operations/group_join"] = State(60, "/initialized/behaviour/operations/group_join", self)
+        self.states["/initialized/behaviour/operations/group_join"] = State(57, "/initialized/behaviour/operations/group_join", self)
         self.states["/initialized/behaviour/operations/group_join"].setEnter(self._initialized_behaviour_operations_group_join_enter)
         
         # state /initialized/behaviour/operations/group_kick
-        self.states["/initialized/behaviour/operations/group_kick"] = State(61, "/initialized/behaviour/operations/group_kick", self)
+        self.states["/initialized/behaviour/operations/group_kick"] = State(58, "/initialized/behaviour/operations/group_kick", self)
         self.states["/initialized/behaviour/operations/group_kick"].setEnter(self._initialized_behaviour_operations_group_kick_enter)
         
         # state /initialized/behaviour/operations/group_list
-        self.states["/initialized/behaviour/operations/group_list"] = State(62, "/initialized/behaviour/operations/group_list", self)
+        self.states["/initialized/behaviour/operations/group_list"] = State(59, "/initialized/behaviour/operations/group_list", self)
         self.states["/initialized/behaviour/operations/group_list"].setEnter(self._initialized_behaviour_operations_group_list_enter)
         
         # state /initialized/behaviour/operations/admin_promote
-        self.states["/initialized/behaviour/operations/admin_promote"] = State(63, "/initialized/behaviour/operations/admin_promote", self)
+        self.states["/initialized/behaviour/operations/admin_promote"] = State(60, "/initialized/behaviour/operations/admin_promote", self)
         self.states["/initialized/behaviour/operations/admin_promote"].setEnter(self._initialized_behaviour_operations_admin_promote_enter)
         
         # state /initialized/behaviour/operations/admin_demote
-        self.states["/initialized/behaviour/operations/admin_demote"] = State(64, "/initialized/behaviour/operations/admin_demote", self)
+        self.states["/initialized/behaviour/operations/admin_demote"] = State(61, "/initialized/behaviour/operations/admin_demote", self)
         self.states["/initialized/behaviour/operations/admin_demote"].setEnter(self._initialized_behaviour_operations_admin_demote_enter)
         
         # state /initialized/behaviour/operations/conformance_delete
-        self.states["/initialized/behaviour/operations/conformance_delete"] = State(65, "/initialized/behaviour/operations/conformance_delete", self)
+        self.states["/initialized/behaviour/operations/conformance_delete"] = State(62, "/initialized/behaviour/operations/conformance_delete", self)
         self.states["/initialized/behaviour/operations/conformance_delete"].setEnter(self._initialized_behaviour_operations_conformance_delete_enter)
         
         # state /initialized/behaviour/operations/conformance_add
-        self.states["/initialized/behaviour/operations/conformance_add"] = State(66, "/initialized/behaviour/operations/conformance_add", self)
+        self.states["/initialized/behaviour/operations/conformance_add"] = State(63, "/initialized/behaviour/operations/conformance_add", self)
         self.states["/initialized/behaviour/operations/conformance_add"].setEnter(self._initialized_behaviour_operations_conformance_add_enter)
         
         # state /initialized/behaviour/operations/folder_create
-        self.states["/initialized/behaviour/operations/folder_create"] = State(67, "/initialized/behaviour/operations/folder_create", self)
+        self.states["/initialized/behaviour/operations/folder_create"] = State(64, "/initialized/behaviour/operations/folder_create", self)
         self.states["/initialized/behaviour/operations/folder_create"].setEnter(self._initialized_behaviour_operations_folder_create_enter)
         
         # state /initialized/behaviour/operations/model_types
-        self.states["/initialized/behaviour/operations/model_types"] = State(68, "/initialized/behaviour/operations/model_types", self)
+        self.states["/initialized/behaviour/operations/model_types"] = State(65, "/initialized/behaviour/operations/model_types", self)
         self.states["/initialized/behaviour/operations/model_types"].setEnter(self._initialized_behaviour_operations_model_types_enter)
         
         # state /initialized/behaviour/operations/element_list
-        self.states["/initialized/behaviour/operations/element_list"] = State(69, "/initialized/behaviour/operations/element_list", self)
+        self.states["/initialized/behaviour/operations/element_list"] = State(66, "/initialized/behaviour/operations/element_list", self)
         self.states["/initialized/behaviour/operations/element_list"].setEnter(self._initialized_behaviour_operations_element_list_enter)
         
         # state /initialized/behaviour/operations/element_list_nice
-        self.states["/initialized/behaviour/operations/element_list_nice"] = State(70, "/initialized/behaviour/operations/element_list_nice", self)
+        self.states["/initialized/behaviour/operations/element_list_nice"] = State(67, "/initialized/behaviour/operations/element_list_nice", self)
         self.states["/initialized/behaviour/operations/element_list_nice"].setEnter(self._initialized_behaviour_operations_element_list_nice_enter)
         
         # state /initialized/behaviour/operations/types
-        self.states["/initialized/behaviour/operations/types"] = State(71, "/initialized/behaviour/operations/types", self)
+        self.states["/initialized/behaviour/operations/types"] = State(68, "/initialized/behaviour/operations/types", self)
         self.states["/initialized/behaviour/operations/types"].setEnter(self._initialized_behaviour_operations_types_enter)
         
         # state /initialized/behaviour/operations/types_full
-        self.states["/initialized/behaviour/operations/types_full"] = State(72, "/initialized/behaviour/operations/types_full", self)
+        self.states["/initialized/behaviour/operations/types_full"] = State(69, "/initialized/behaviour/operations/types_full", self)
         self.states["/initialized/behaviour/operations/types_full"].setEnter(self._initialized_behaviour_operations_types_full_enter)
         
         # state /initialized/behaviour/operations/read_info
-        self.states["/initialized/behaviour/operations/read_info"] = State(73, "/initialized/behaviour/operations/read_info", self)
+        self.states["/initialized/behaviour/operations/read_info"] = State(70, "/initialized/behaviour/operations/read_info", self)
         self.states["/initialized/behaviour/operations/read_info"].setEnter(self._initialized_behaviour_operations_read_info_enter)
         
         # state /initialized/behaviour/operations/read_attrs
-        self.states["/initialized/behaviour/operations/read_attrs"] = State(74, "/initialized/behaviour/operations/read_attrs", self)
+        self.states["/initialized/behaviour/operations/read_attrs"] = State(71, "/initialized/behaviour/operations/read_attrs", self)
         self.states["/initialized/behaviour/operations/read_attrs"].setEnter(self._initialized_behaviour_operations_read_attrs_enter)
         
         # state /initialized/behaviour/operations/read_defined_attrs
-        self.states["/initialized/behaviour/operations/read_defined_attrs"] = State(75, "/initialized/behaviour/operations/read_defined_attrs", self)
+        self.states["/initialized/behaviour/operations/read_defined_attrs"] = State(72, "/initialized/behaviour/operations/read_defined_attrs", self)
         self.states["/initialized/behaviour/operations/read_defined_attrs"].setEnter(self._initialized_behaviour_operations_read_defined_attrs_enter)
         
         # state /initialized/behaviour/operations/instantiate
-        self.states["/initialized/behaviour/operations/instantiate"] = State(76, "/initialized/behaviour/operations/instantiate", self)
+        self.states["/initialized/behaviour/operations/instantiate"] = State(73, "/initialized/behaviour/operations/instantiate", self)
         
         # state /initialized/behaviour/operations/instantiate/decide_node_or_edge
-        self.states["/initialized/behaviour/operations/instantiate/decide_node_or_edge"] = State(77, "/initialized/behaviour/operations/instantiate/decide_node_or_edge", self)
+        self.states["/initialized/behaviour/operations/instantiate/decide_node_or_edge"] = State(74, "/initialized/behaviour/operations/instantiate/decide_node_or_edge", self)
         
         # state /initialized/behaviour/operations/instantiate/created
-        self.states["/initialized/behaviour/operations/instantiate/created"] = State(78, "/initialized/behaviour/operations/instantiate/created", self)
+        self.states["/initialized/behaviour/operations/instantiate/created"] = State(75, "/initialized/behaviour/operations/instantiate/created", self)
         
         # state /initialized/behaviour/operations/delete_element
-        self.states["/initialized/behaviour/operations/delete_element"] = State(79, "/initialized/behaviour/operations/delete_element", self)
+        self.states["/initialized/behaviour/operations/delete_element"] = State(76, "/initialized/behaviour/operations/delete_element", self)
         self.states["/initialized/behaviour/operations/delete_element"].setEnter(self._initialized_behaviour_operations_delete_element_enter)
         
         # state /initialized/behaviour/operations/attr_assign
-        self.states["/initialized/behaviour/operations/attr_assign"] = State(80, "/initialized/behaviour/operations/attr_assign", self)
+        self.states["/initialized/behaviour/operations/attr_assign"] = State(77, "/initialized/behaviour/operations/attr_assign", self)
         self.states["/initialized/behaviour/operations/attr_assign"].setEnter(self._initialized_behaviour_operations_attr_assign_enter)
         
         # state /initialized/behaviour/operations/attr_assign_code
-        self.states["/initialized/behaviour/operations/attr_assign_code"] = State(81, "/initialized/behaviour/operations/attr_assign_code", self)
+        self.states["/initialized/behaviour/operations/attr_assign_code"] = State(78, "/initialized/behaviour/operations/attr_assign_code", self)
         self.states["/initialized/behaviour/operations/attr_assign_code"].setEnter(self._initialized_behaviour_operations_attr_assign_code_enter)
         
         # state /initialized/behaviour/operations/attr_delete
-        self.states["/initialized/behaviour/operations/attr_delete"] = State(82, "/initialized/behaviour/operations/attr_delete", self)
+        self.states["/initialized/behaviour/operations/attr_delete"] = State(79, "/initialized/behaviour/operations/attr_delete", self)
         self.states["/initialized/behaviour/operations/attr_delete"].setEnter(self._initialized_behaviour_operations_attr_delete_enter)
         
         # state /initialized/behaviour/operations/attr_type
-        self.states["/initialized/behaviour/operations/attr_type"] = State(83, "/initialized/behaviour/operations/attr_type", self)
+        self.states["/initialized/behaviour/operations/attr_type"] = State(80, "/initialized/behaviour/operations/attr_type", self)
         self.states["/initialized/behaviour/operations/attr_type"].setEnter(self._initialized_behaviour_operations_attr_type_enter)
         
         # state /initialized/behaviour/operations/attr_name
-        self.states["/initialized/behaviour/operations/attr_name"] = State(84, "/initialized/behaviour/operations/attr_name", self)
+        self.states["/initialized/behaviour/operations/attr_name"] = State(81, "/initialized/behaviour/operations/attr_name", self)
         self.states["/initialized/behaviour/operations/attr_name"].setEnter(self._initialized_behaviour_operations_attr_name_enter)
         
         # state /initialized/behaviour/operations/attr_optional
-        self.states["/initialized/behaviour/operations/attr_optional"] = State(85, "/initialized/behaviour/operations/attr_optional", self)
+        self.states["/initialized/behaviour/operations/attr_optional"] = State(82, "/initialized/behaviour/operations/attr_optional", self)
         self.states["/initialized/behaviour/operations/attr_optional"].setEnter(self._initialized_behaviour_operations_attr_optional_enter)
         
         # state /initialized/behaviour/operations/read_outgoing
-        self.states["/initialized/behaviour/operations/read_outgoing"] = State(86, "/initialized/behaviour/operations/read_outgoing", self)
+        self.states["/initialized/behaviour/operations/read_outgoing"] = State(83, "/initialized/behaviour/operations/read_outgoing", self)
         self.states["/initialized/behaviour/operations/read_outgoing"].setEnter(self._initialized_behaviour_operations_read_outgoing_enter)
         
         # state /initialized/behaviour/operations/read_incoming
-        self.states["/initialized/behaviour/operations/read_incoming"] = State(87, "/initialized/behaviour/operations/read_incoming", self)
+        self.states["/initialized/behaviour/operations/read_incoming"] = State(84, "/initialized/behaviour/operations/read_incoming", self)
         self.states["/initialized/behaviour/operations/read_incoming"].setEnter(self._initialized_behaviour_operations_read_incoming_enter)
         
         # state /initialized/behaviour/operations/read_association_source
-        self.states["/initialized/behaviour/operations/read_association_source"] = State(88, "/initialized/behaviour/operations/read_association_source", self)
+        self.states["/initialized/behaviour/operations/read_association_source"] = State(85, "/initialized/behaviour/operations/read_association_source", self)
         self.states["/initialized/behaviour/operations/read_association_source"].setEnter(self._initialized_behaviour_operations_read_association_source_enter)
         
         # state /initialized/behaviour/operations/read_association_destination
-        self.states["/initialized/behaviour/operations/read_association_destination"] = State(89, "/initialized/behaviour/operations/read_association_destination", self)
+        self.states["/initialized/behaviour/operations/read_association_destination"] = State(86, "/initialized/behaviour/operations/read_association_destination", self)
         self.states["/initialized/behaviour/operations/read_association_destination"].setEnter(self._initialized_behaviour_operations_read_association_destination_enter)
         
         # state /initialized/behaviour/operations/connections_between
-        self.states["/initialized/behaviour/operations/connections_between"] = State(90, "/initialized/behaviour/operations/connections_between", self)
+        self.states["/initialized/behaviour/operations/connections_between"] = State(87, "/initialized/behaviour/operations/connections_between", self)
         self.states["/initialized/behaviour/operations/connections_between"].setEnter(self._initialized_behaviour_operations_connections_between_enter)
         
         # state /initialized/behaviour/operations/define_attribute
-        self.states["/initialized/behaviour/operations/define_attribute"] = State(91, "/initialized/behaviour/operations/define_attribute", self)
+        self.states["/initialized/behaviour/operations/define_attribute"] = State(88, "/initialized/behaviour/operations/define_attribute", self)
         self.states["/initialized/behaviour/operations/define_attribute"].setEnter(self._initialized_behaviour_operations_define_attribute_enter)
         
         # state /initialized/behaviour/operations/undefine_attribute
-        self.states["/initialized/behaviour/operations/undefine_attribute"] = State(92, "/initialized/behaviour/operations/undefine_attribute", self)
+        self.states["/initialized/behaviour/operations/undefine_attribute"] = State(89, "/initialized/behaviour/operations/undefine_attribute", self)
         self.states["/initialized/behaviour/operations/undefine_attribute"].setEnter(self._initialized_behaviour_operations_undefine_attribute_enter)
         
         # state /initialized/behaviour/operations/all_instances
-        self.states["/initialized/behaviour/operations/all_instances"] = State(93, "/initialized/behaviour/operations/all_instances", self)
+        self.states["/initialized/behaviour/operations/all_instances"] = State(90, "/initialized/behaviour/operations/all_instances", self)
         self.states["/initialized/behaviour/operations/all_instances"].setEnter(self._initialized_behaviour_operations_all_instances_enter)
         
         # state /initialized/behaviour/operations/exit_save
-        self.states["/initialized/behaviour/operations/exit_save"] = State(94, "/initialized/behaviour/operations/exit_save", self)
+        self.states["/initialized/behaviour/operations/exit_save"] = State(91, "/initialized/behaviour/operations/exit_save", self)
         self.states["/initialized/behaviour/operations/exit_save"].setEnter(self._initialized_behaviour_operations_exit_save_enter)
         
         # state /initialized/behaviour/operations/service_register
-        self.states["/initialized/behaviour/operations/service_register"] = State(95, "/initialized/behaviour/operations/service_register", self)
+        self.states["/initialized/behaviour/operations/service_register"] = State(92, "/initialized/behaviour/operations/service_register", self)
         self.states["/initialized/behaviour/operations/service_register"].setEnter(self._initialized_behaviour_operations_service_register_enter)
         
         # state /initialized/behaviour/operations/service_stop
-        self.states["/initialized/behaviour/operations/service_stop"] = State(96, "/initialized/behaviour/operations/service_stop", self)
+        self.states["/initialized/behaviour/operations/service_stop"] = State(93, "/initialized/behaviour/operations/service_stop", self)
         self.states["/initialized/behaviour/operations/service_stop"].setEnter(self._initialized_behaviour_operations_service_stop_enter)
         
         # state /initialized/behaviour/wait_for_action
-        self.states["/initialized/behaviour/wait_for_action"] = State(97, "/initialized/behaviour/wait_for_action", self)
+        self.states["/initialized/behaviour/wait_for_action"] = State(94, "/initialized/behaviour/wait_for_action", self)
         
         # state /initialized/behaviour/wait_for_action/disconnected
-        self.states["/initialized/behaviour/wait_for_action/disconnected"] = State(98, "/initialized/behaviour/wait_for_action/disconnected", self)
+        self.states["/initialized/behaviour/wait_for_action/disconnected"] = State(95, "/initialized/behaviour/wait_for_action/disconnected", self)
         
         # state /initialized/behaviour/wait_for_action/connected
-        self.states["/initialized/behaviour/wait_for_action/connected"] = State(99, "/initialized/behaviour/wait_for_action/connected", self)
+        self.states["/initialized/behaviour/wait_for_action/connected"] = State(96, "/initialized/behaviour/wait_for_action/connected", self)
         
         # state /initialized/behaviour/wait_for_action/activity
-        self.states["/initialized/behaviour/wait_for_action/activity"] = State(100, "/initialized/behaviour/wait_for_action/activity", self)
+        self.states["/initialized/behaviour/wait_for_action/activity"] = State(97, "/initialized/behaviour/wait_for_action/activity", self)
         
         # state /initialized/behaviour/wait_for_action/activity/SC
-        self.states["/initialized/behaviour/wait_for_action/activity/SC"] = State(101, "/initialized/behaviour/wait_for_action/activity/SC", self)
+        self.states["/initialized/behaviour/wait_for_action/activity/SC"] = State(98, "/initialized/behaviour/wait_for_action/activity/SC", self)
         self.states["/initialized/behaviour/wait_for_action/activity/SC"].setEnter(self._initialized_behaviour_wait_for_action_activity_SC_enter)
         
         # state /initialized/behaviour/wait_for_action/activity/SC/forwarding
-        self.states["/initialized/behaviour/wait_for_action/activity/SC/forwarding"] = State(102, "/initialized/behaviour/wait_for_action/activity/SC/forwarding", self)
+        self.states["/initialized/behaviour/wait_for_action/activity/SC/forwarding"] = State(99, "/initialized/behaviour/wait_for_action/activity/SC/forwarding", self)
         
         # state /initialized/behaviour/wait_for_action/activity/OP
-        self.states["/initialized/behaviour/wait_for_action/activity/OP"] = State(103, "/initialized/behaviour/wait_for_action/activity/OP", self)
+        self.states["/initialized/behaviour/wait_for_action/activity/OP"] = State(100, "/initialized/behaviour/wait_for_action/activity/OP", self)
         self.states["/initialized/behaviour/wait_for_action/activity/OP"].setEnter(self._initialized_behaviour_wait_for_action_activity_OP_enter)
         
         # state /initialized/behaviour/wait_for_action/activity/OP/forwarding
-        self.states["/initialized/behaviour/wait_for_action/activity/OP/forwarding"] = State(104, "/initialized/behaviour/wait_for_action/activity/OP/forwarding", self)
+        self.states["/initialized/behaviour/wait_for_action/activity/OP/forwarding"] = State(101, "/initialized/behaviour/wait_for_action/activity/OP/forwarding", self)
         
         # state /initialized/behaviour/wait_for_action/megamodelling
-        self.states["/initialized/behaviour/wait_for_action/megamodelling"] = State(105, "/initialized/behaviour/wait_for_action/megamodelling", self)
+        self.states["/initialized/behaviour/wait_for_action/megamodelling"] = State(102, "/initialized/behaviour/wait_for_action/megamodelling", self)
         
         # state /initialized/behaviour/wait_for_action/service
-        self.states["/initialized/behaviour/wait_for_action/service"] = State(106, "/initialized/behaviour/wait_for_action/service", self)
+        self.states["/initialized/behaviour/wait_for_action/service"] = State(103, "/initialized/behaviour/wait_for_action/service", self)
         
         # state /initialized/behaviour/wait_for_action/modelling
-        self.states["/initialized/behaviour/wait_for_action/modelling"] = State(107, "/initialized/behaviour/wait_for_action/modelling", self)
+        self.states["/initialized/behaviour/wait_for_action/modelling"] = State(104, "/initialized/behaviour/wait_for_action/modelling", self)
         
         # state /initialized/behaviour/wait_for_action/modelling/recognized
-        self.states["/initialized/behaviour/wait_for_action/modelling/recognized"] = State(108, "/initialized/behaviour/wait_for_action/modelling/recognized", self)
+        self.states["/initialized/behaviour/wait_for_action/modelling/recognized"] = State(105, "/initialized/behaviour/wait_for_action/modelling/recognized", self)
         
         # state /initialized/behaviour/wait_for_action/modelling/recognized/manual
-        self.states["/initialized/behaviour/wait_for_action/modelling/recognized/manual"] = State(109, "/initialized/behaviour/wait_for_action/modelling/recognized/manual", self)
+        self.states["/initialized/behaviour/wait_for_action/modelling/recognized/manual"] = State(106, "/initialized/behaviour/wait_for_action/modelling/recognized/manual", self)
         
         # state /initialized/behaviour/wait_for_action/modelling/recognized/scripted
-        self.states["/initialized/behaviour/wait_for_action/modelling/recognized/scripted"] = State(110, "/initialized/behaviour/wait_for_action/modelling/recognized/scripted", self)
+        self.states["/initialized/behaviour/wait_for_action/modelling/recognized/scripted"] = State(107, "/initialized/behaviour/wait_for_action/modelling/recognized/scripted", self)
         
         # state /initialized/behaviour/wait_for_action/finished
-        self.states["/initialized/behaviour/wait_for_action/finished"] = State(111, "/initialized/behaviour/wait_for_action/finished", self)
+        self.states["/initialized/behaviour/wait_for_action/finished"] = State(108, "/initialized/behaviour/wait_for_action/finished", self)
         
         # state /initialized/behaviour/wait_for_action/history
-        self.states["/initialized/behaviour/wait_for_action/history"] = DeepHistoryState(112, "/initialized/behaviour/wait_for_action/history", self)
+        self.states["/initialized/behaviour/wait_for_action/history"] = DeepHistoryState(109, "/initialized/behaviour/wait_for_action/history", self)
         
         # state /initialized/behaviour/going_manual
-        self.states["/initialized/behaviour/going_manual"] = State(113, "/initialized/behaviour/going_manual", self)
+        self.states["/initialized/behaviour/going_manual"] = State(110, "/initialized/behaviour/going_manual", self)
         
         # state /initialized/behaviour/going_manual/init
-        self.states["/initialized/behaviour/going_manual/init"] = State(114, "/initialized/behaviour/going_manual/init", self)
+        self.states["/initialized/behaviour/going_manual/init"] = State(111, "/initialized/behaviour/going_manual/init", self)
         self.states["/initialized/behaviour/going_manual/init"].setEnter(self._initialized_behaviour_going_manual_init_enter)
         
         # state /initialized/behaviour/going_manual/search
-        self.states["/initialized/behaviour/going_manual/search"] = State(115, "/initialized/behaviour/going_manual/search", self)
+        self.states["/initialized/behaviour/going_manual/search"] = State(112, "/initialized/behaviour/going_manual/search", self)
         self.states["/initialized/behaviour/going_manual/search"].setEnter(self._initialized_behaviour_going_manual_search_enter)
         
         # state /initialized/behaviour/going_manual/OK
-        self.states["/initialized/behaviour/going_manual/OK"] = State(116, "/initialized/behaviour/going_manual/OK", self)
+        self.states["/initialized/behaviour/going_manual/OK"] = State(113, "/initialized/behaviour/going_manual/OK", self)
         self.states["/initialized/behaviour/going_manual/OK"].setEnter(self._initialized_behaviour_going_manual_OK_enter)
         
         # state /initialized/behaviour/going_scripted
-        self.states["/initialized/behaviour/going_scripted"] = State(117, "/initialized/behaviour/going_scripted", self)
+        self.states["/initialized/behaviour/going_scripted"] = State(114, "/initialized/behaviour/going_scripted", self)
         self.states["/initialized/behaviour/going_scripted"].setEnter(self._initialized_behaviour_going_scripted_enter)
         
         # state /initialized/behaviour/leaving_manual
-        self.states["/initialized/behaviour/leaving_manual"] = State(118, "/initialized/behaviour/leaving_manual", self)
+        self.states["/initialized/behaviour/leaving_manual"] = State(115, "/initialized/behaviour/leaving_manual", self)
         self.states["/initialized/behaviour/leaving_manual"].setEnter(self._initialized_behaviour_leaving_manual_enter)
         
         # state /initialized/behaviour/leaving_manual_drop
-        self.states["/initialized/behaviour/leaving_manual_drop"] = State(119, "/initialized/behaviour/leaving_manual_drop", self)
+        self.states["/initialized/behaviour/leaving_manual_drop"] = State(116, "/initialized/behaviour/leaving_manual_drop", self)
         self.states["/initialized/behaviour/leaving_manual_drop"].setEnter(self._initialized_behaviour_leaving_manual_drop_enter)
         
         # state /initialized/queue
-        self.states["/initialized/queue"] = State(120, "/initialized/queue", self)
+        self.states["/initialized/queue"] = State(117, "/initialized/queue", self)
         
         # state /initialized/queue/queue
-        self.states["/initialized/queue/queue"] = State(121, "/initialized/queue/queue", self)
+        self.states["/initialized/queue/queue"] = State(118, "/initialized/queue/queue", self)
         
         # add children
         self.states[""].addChild(self.states["/init"])
@@ -588,7 +577,6 @@ class Modelverse(RuntimeClassBase):
         self.states["/initialized/behaviour/operations"].addChild(self.states["/initialized/behaviour/operations/model_list_full"])
         self.states["/initialized/behaviour/operations"].addChild(self.states["/initialized/behaviour/operations/verify"])
         self.states["/initialized/behaviour/operations"].addChild(self.states["/initialized/behaviour/operations/alter_context"])
-        self.states["/initialized/behaviour/operations"].addChild(self.states["/initialized/behaviour/operations/model_upload"])
         self.states["/initialized/behaviour/operations"].addChild(self.states["/initialized/behaviour/operations/model_overwrite"])
         self.states["/initialized/behaviour/operations"].addChild(self.states["/initialized/behaviour/operations/disconnect"])
         self.states["/initialized/behaviour/operations"].addChild(self.states["/initialized/behaviour/operations/user_logout"])
@@ -647,8 +635,6 @@ class Modelverse(RuntimeClassBase):
         self.states["/initialized/behaviour/operations/login"].addChild(self.states["/initialized/behaviour/operations/login/login_ok"])
         self.states["/initialized/behaviour/operations/model_add"].addChild(self.states["/initialized/behaviour/operations/model_add/send_metadata"])
         self.states["/initialized/behaviour/operations/verify"].addChild(self.states["/initialized/behaviour/operations/verify/waiting"])
-        self.states["/initialized/behaviour/operations/model_upload"].addChild(self.states["/initialized/behaviour/operations/model_upload/send_metadata"])
-        self.states["/initialized/behaviour/operations/model_upload"].addChild(self.states["/initialized/behaviour/operations/model_upload/send_model"])
         self.states["/initialized/behaviour/operations/model_overwrite"].addChild(self.states["/initialized/behaviour/operations/model_overwrite/send_metadata"])
         self.states["/initialized/behaviour/operations/model_overwrite"].addChild(self.states["/initialized/behaviour/operations/model_overwrite/send_model"])
         self.states["/initialized/behaviour/operations/store_on_scripted"].addChild(self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add"])
@@ -692,7 +678,6 @@ class Modelverse(RuntimeClassBase):
         self.states["/initialized/behaviour/operations/login"].default_state = self.states["/initialized/behaviour/operations/login/wait_prompt_1"]
         self.states["/initialized/behaviour/operations/model_add"].default_state = self.states["/initialized/behaviour/operations/model_add/send_metadata"]
         self.states["/initialized/behaviour/operations/verify"].default_state = self.states["/initialized/behaviour/operations/verify/waiting"]
-        self.states["/initialized/behaviour/operations/model_upload"].default_state = self.states["/initialized/behaviour/operations/model_upload/send_metadata"]
         self.states["/initialized/behaviour/operations/model_overwrite"].default_state = self.states["/initialized/behaviour/operations/model_overwrite/send_metadata"]
         self.states["/initialized/behaviour/operations/store_on_scripted"].default_state = self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add"]
         self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add"].default_state = self.states["/initialized/behaviour/operations/store_on_scripted/transformation_add/send_metadata"]
@@ -870,19 +855,6 @@ class Modelverse(RuntimeClassBase):
         _initialized_behaviour_operations_alter_context_0.setTrigger(None)
         self.states["/initialized/behaviour/operations/alter_context"].addTransition(_initialized_behaviour_operations_alter_context_0)
         
-        # transition /initialized/behaviour/operations/model_upload/send_metadata
-        _initialized_behaviour_operations_model_upload_send_metadata_0 = Transition(self, self.states["/initialized/behaviour/operations/model_upload/send_metadata"], [self.states["/initialized/behaviour/operations/model_upload/send_model"]])
-        _initialized_behaviour_operations_model_upload_send_metadata_0.setTrigger(None)
-        _initialized_behaviour_operations_model_upload_send_metadata_0.setGuard(self._initialized_behaviour_operations_model_upload_send_metadata_0_guard)
-        self.states["/initialized/behaviour/operations/model_upload/send_metadata"].addTransition(_initialized_behaviour_operations_model_upload_send_metadata_0)
-        
-        # transition /initialized/behaviour/operations/model_upload/send_model
-        _initialized_behaviour_operations_model_upload_send_model_0 = Transition(self, self.states["/initialized/behaviour/operations/model_upload/send_model"], [self.states["/initialized/behaviour/wait_for_action/history"]])
-        _initialized_behaviour_operations_model_upload_send_model_0.setAction(self._initialized_behaviour_operations_model_upload_send_model_0_exec)
-        _initialized_behaviour_operations_model_upload_send_model_0.setTrigger(None)
-        _initialized_behaviour_operations_model_upload_send_model_0.setGuard(self._initialized_behaviour_operations_model_upload_send_model_0_guard)
-        self.states["/initialized/behaviour/operations/model_upload/send_model"].addTransition(_initialized_behaviour_operations_model_upload_send_model_0)
-        
         # transition /initialized/behaviour/operations/model_overwrite/send_metadata
         _initialized_behaviour_operations_model_overwrite_send_metadata_0 = Transition(self, self.states["/initialized/behaviour/operations/model_overwrite/send_metadata"], [self.states["/initialized/behaviour/operations/model_overwrite/send_model"]])
         _initialized_behaviour_operations_model_overwrite_send_metadata_0.setTrigger(None)
@@ -1774,81 +1746,76 @@ class Modelverse(RuntimeClassBase):
         _initialized_behaviour_wait_for_action_modelling_recognized_9.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_9.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_9_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_9)
-        _initialized_behaviour_wait_for_action_modelling_recognized_10 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/model_upload"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_10 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/attr_assign_code"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_10.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_10_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_10.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_10.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_10_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_10)
-        _initialized_behaviour_wait_for_action_modelling_recognized_11 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/attr_assign_code"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_11 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/attr_delete"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_11.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_11_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_11.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_11.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_11_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_11)
-        _initialized_behaviour_wait_for_action_modelling_recognized_12 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/attr_delete"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_12 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/attr_name"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_12.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_12_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_12.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_12.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_12_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_12)
-        _initialized_behaviour_wait_for_action_modelling_recognized_13 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/attr_name"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_13 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/attr_type"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_13.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_13_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_13.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_13.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_13_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_13)
-        _initialized_behaviour_wait_for_action_modelling_recognized_14 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/attr_type"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_14 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/attr_optional"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_14.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_14_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_14.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_14.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_14_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_14)
-        _initialized_behaviour_wait_for_action_modelling_recognized_15 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/attr_optional"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_15 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/read_outgoing"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_15.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_15_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_15.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_15.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_15_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_15)
-        _initialized_behaviour_wait_for_action_modelling_recognized_16 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/read_outgoing"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_16 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/read_incoming"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_16.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_16_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_16.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_16.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_16_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_16)
-        _initialized_behaviour_wait_for_action_modelling_recognized_17 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/read_incoming"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_17 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/read_association_source"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_17.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_17_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_17.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_17.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_17_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_17)
-        _initialized_behaviour_wait_for_action_modelling_recognized_18 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/read_association_source"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_18 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/read_association_destination"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_18.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_18_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_18.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_18.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_18_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_18)
-        _initialized_behaviour_wait_for_action_modelling_recognized_19 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/read_association_destination"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_19 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/connections_between"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_19.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_19_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_19.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_19.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_19_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_19)
-        _initialized_behaviour_wait_for_action_modelling_recognized_20 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/connections_between"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_20 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/define_attribute"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_20.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_20_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_20.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_20.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_20_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_20)
-        _initialized_behaviour_wait_for_action_modelling_recognized_21 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/define_attribute"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_21 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/undefine_attribute"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_21.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_21_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_21.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_21.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_21_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_21)
-        _initialized_behaviour_wait_for_action_modelling_recognized_22 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/undefine_attribute"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_22 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/all_instances"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_22.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_22_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_22.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_22.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_22_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_22)
-        _initialized_behaviour_wait_for_action_modelling_recognized_23 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/all_instances"]])
+        _initialized_behaviour_wait_for_action_modelling_recognized_23 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/exit_save"]])
         _initialized_behaviour_wait_for_action_modelling_recognized_23.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_23_exec)
         _initialized_behaviour_wait_for_action_modelling_recognized_23.setTrigger(None)
         _initialized_behaviour_wait_for_action_modelling_recognized_23.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_23_guard)
         self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_23)
-        _initialized_behaviour_wait_for_action_modelling_recognized_24 = Transition(self, self.states["/initialized/behaviour/wait_for_action/modelling/recognized"], [self.states["/initialized/behaviour/operations/exit_save"]])
-        _initialized_behaviour_wait_for_action_modelling_recognized_24.setAction(self._initialized_behaviour_wait_for_action_modelling_recognized_24_exec)
-        _initialized_behaviour_wait_for_action_modelling_recognized_24.setTrigger(None)
-        _initialized_behaviour_wait_for_action_modelling_recognized_24.setGuard(self._initialized_behaviour_wait_for_action_modelling_recognized_24_guard)
-        self.states["/initialized/behaviour/wait_for_action/modelling/recognized"].addTransition(_initialized_behaviour_wait_for_action_modelling_recognized_24)
     
     def _initialized_enter(self):
         self.raiseInternalEvent(Event("ready", None, []))
@@ -1893,17 +1860,11 @@ class Modelverse(RuntimeClassBase):
     def _initialized_behaviour_operations_model_list_full_enter(self):
         self.raiseInternalEvent(Event("request", None, [['model_list_full', self.parameters[0]]]))
     
-    def _initialized_behaviour_operations_model_upload_send_metadata_enter(self):
-        self.raiseInternalEvent(Event("request", None, [['upload']]))
-    
-    def _initialized_behaviour_operations_model_upload_send_model_enter(self):
-        self.raiseInternalEvent(Event("request", None, [self.parameters[1]]))
-    
     def _initialized_behaviour_operations_model_overwrite_send_metadata_enter(self):
-        self.raiseInternalEvent(Event("request", None, [['model_overwrite', self.parameters[0], self.registered_metamodel[self.parameters[0]]]]))
+        self.raiseInternalEvent(Event("request", None, [['model_overwrite', self.parameters[0], self.parameters[1]]]))
     
     def _initialized_behaviour_operations_model_overwrite_send_model_enter(self):
-        self.raiseInternalEvent(Event("request", None, [self.parameters[1]]))
+        self.raiseInternalEvent(Event("request", None, [self.parameters[2]]))
     
     def _initialized_behaviour_operations_disconnect_enter(self):
         self.raiseInternalEvent(Event("request", None, ['exit']))
@@ -2186,90 +2147,84 @@ class Modelverse(RuntimeClassBase):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_10_guard(self, parameters):
-        return self.expect_action(self.context, 'model_overwrite')
+        return self.expect_action(self.context, 'attr_assign_code')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_11_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_11_guard(self, parameters):
-        return self.expect_action(self.context, 'attr_assign_code')
+        return self.expect_action(self.context, 'attr_delete')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_12_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_12_guard(self, parameters):
-        return self.expect_action(self.context, 'attr_delete')
+        return self.expect_action(self.context, 'attr_name')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_13_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_13_guard(self, parameters):
-        return self.expect_action(self.context, 'attr_name')
+        return self.expect_action(self.context, 'attr_type')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_14_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_14_guard(self, parameters):
-        return self.expect_action(self.context, 'attr_type')
+        return self.expect_action(self.context, 'attr_optional')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_15_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_15_guard(self, parameters):
-        return self.expect_action(self.context, 'attr_optional')
+        return self.expect_action(self.context, 'read_outgoing')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_16_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_16_guard(self, parameters):
-        return self.expect_action(self.context, 'read_outgoing')
+        return self.expect_action(self.context, 'read_incoming')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_17_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_17_guard(self, parameters):
-        return self.expect_action(self.context, 'read_incoming')
+        return self.expect_action(self.context, 'read_association_source')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_18_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_18_guard(self, parameters):
-        return self.expect_action(self.context, 'read_association_source')
+        return self.expect_action(self.context, 'read_association_destination')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_19_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_19_guard(self, parameters):
-        return self.expect_action(self.context, 'read_association_destination')
+        return self.expect_action(self.context, 'connections_between')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_20_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_20_guard(self, parameters):
-        return self.expect_action(self.context, 'connections_between')
+        return self.expect_action(self.context, 'define_attribute')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_21_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_21_guard(self, parameters):
-        return self.expect_action(self.context, 'define_attribute')
+        return self.expect_action(self.context, 'undefine_attribute')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_22_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_22_guard(self, parameters):
-        return self.expect_action(self.context, 'undefine_attribute')
+        return self.expect_action(self.context, 'all_instances')
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_23_exec(self, parameters):
         self.load_action(self.context)
     
     def _initialized_behaviour_wait_for_action_modelling_recognized_23_guard(self, parameters):
-        return self.expect_action(self.context, 'all_instances')
-    
-    def _initialized_behaviour_wait_for_action_modelling_recognized_24_exec(self, parameters):
-        self.load_action(self.context)
-    
-    def _initialized_behaviour_wait_for_action_modelling_recognized_24_guard(self, parameters):
         return self.expect_action(self.context, 'exit_save')
     
     def _init_0_exec(self, parameters):
@@ -2435,20 +2390,12 @@ class Modelverse(RuntimeClassBase):
     def _initialized_behaviour_operations_alter_context_0_exec(self, parameters):
         self.registered_metamodel[self.parameters[0]] = self.parameters[1]
     
-    def _initialized_behaviour_operations_model_upload_send_metadata_0_guard(self, parameters):
-        return self.expect_response('Waiting for model constructors...')
-    
-    def _initialized_behaviour_operations_model_upload_send_model_0_exec(self, parameters):
-        self.raiseInternalEvent(Event("result", None, [None]))
-    
-    def _initialized_behaviour_operations_model_upload_send_model_0_guard(self, parameters):
-        return self.expect_response('Success')
-    
     def _initialized_behaviour_operations_model_overwrite_send_metadata_0_guard(self, parameters):
         return self.expect_response('Waiting for model constructors...')
     
     def _initialized_behaviour_operations_model_overwrite_send_model_0_exec(self, parameters):
         self.raiseInternalEvent(Event("result", None, [None]))
+        self.registered_metamodel[self.parameters[0]] = self.parameters[1]
     
     def _initialized_behaviour_operations_model_overwrite_send_model_0_guard(self, parameters):
         return self.expect_response('Success')