|
@@ -422,6 +422,11 @@ Void function user_function_skip_init(user_id : String):
|
|
|
output("Name of the RAMified tranformation metamodel?")
|
|
|
name = input()
|
|
|
if (get_model_id(name) == ""):
|
|
|
+ String merged_formalism_id
|
|
|
+ String ramified_formalism_id
|
|
|
+ String source_formalism_id
|
|
|
+ String tracability_link
|
|
|
+
|
|
|
// New location is available, so write
|
|
|
merged_formalism = model_fuse(all_formalisms)
|
|
|
|
|
@@ -430,12 +435,19 @@ Void function user_function_skip_init(user_id : String):
|
|
|
|
|
|
// Manage meta-info
|
|
|
new_model_id = instantiate_node(core, "Model", "")
|
|
|
+ merged_formalism_id = new_model_id
|
|
|
instantiate_attribute(core, new_model_id, "name", "__merged_" + name)
|
|
|
instantiate_attribute(core, new_model_id, "location", location)
|
|
|
instantiate_attribute(core, new_model_id, "permissions", "200")
|
|
|
instantiate_link(core, "owner", "", new_model_id, user_id)
|
|
|
instantiate_link(core, "instanceOf", "", new_model_id, type_id)
|
|
|
|
|
|
+ // Add tracability links at this level
|
|
|
+ while (read_nr_out(all_formalisms) > 0):
|
|
|
+ source_formalism_id = list_read(set_pop(all_formalisms), 1)
|
|
|
+ tracability_link = instantiate_link(core, "tracability", "", merged_formalism_id, source_formalism_id)
|
|
|
+ instantiate_attribute(core, tracability_link, "type", "merged")
|
|
|
+
|
|
|
// Merge complete, now RAMify!
|
|
|
ramified_formalism = ramify(merged_formalism)
|
|
|
|
|
@@ -450,6 +462,10 @@ Void function user_function_skip_init(user_id : String):
|
|
|
instantiate_link(core, "owner", "", new_model_id, user_id)
|
|
|
instantiate_link(core, "instanceOf", "", new_model_id, type_id)
|
|
|
|
|
|
+ // Add tracability link at this level
|
|
|
+ tracability_link = instantiate_link(core, "tracability", "", ramified_formalism_id, merged_formalism_id)
|
|
|
+ instantiate_attribute(core, tracability_link, "type", "RAMified")
|
|
|
+
|
|
|
else:
|
|
|
output("Model already exists!")
|
|
|
else:
|